JS操作json对象key、value的常用方法分析

yizhihongxing

今天我们一起来详细讲解一下JS操作json对象key、value的常用方法分析。

常用方法分析

在JS中,我们可以使用以下一些方法来操作json对象中的key和value。

1. 获取json对象的keys

我们可以使用Object.keys()方法来获取json对象中所有的keys,具体用法如下所示:

const json = {
  name: "Tom",
  age: 18,
  gender: "male"
};

const keys = Object.keys(json);
console.log(keys); // ["name", "age", "gender"]

2. 获取json对象的values

我们可以使用Object.values()方法来获取json对象中所有的values,具体用法如下所示:

const json = {
  name: "Tom",
  age: 18,
  gender: "male"
};

const values = Object.values(json);
console.log(values); // ["Tom", 18, "male"]

3. 获取json对象的key-value对

我们可以使用Object.entries()方法来获取json对象中所有的key-value对,具体用法如下所示:

const json = {
  name: "Tom",
  age: 18,
  gender: "male"
};

const entries = Object.entries(json);
console.log(entries); // [["name", "Tom"], ["age", 18], ["gender", "male"]]

4. 修改json对象中的value

我们可以直接通过json对象的key来修改它对应的value,具体用法如下所示:

const json = {
  name: "Tom",
  age: 18,
  gender: "male"
};

json.age = 20; // 直接修改json对象中的age属性对应的value

console.log(json); // {name: "Tom", age: 20, gender: "male"}

5. 删除json对象中的key

我们可以使用delete关键字来删除json对象中的一个key,具体用法如下所示:

const json = {
  name: "Tom",
  age: 18,
  gender: "male"
};

delete json.age; // 删除json对象中的age属性

console.log(json); // {name: "Tom", gender: "male"}

示例分析

下面我们通过两个例子来进一步说明JS操作json对象key、value的常用方法具体的应用场景。

例子一:渲染表格数据

假设我们现在有一个json对象,里面存储了一些用户信息,我们希望将这些信息渲染到一个表格中。我们可以使用以上所述的方法来实现这个需求。具体代码如下所示:

<table>
  <thead>
    <tr>
      <th>名字</th>
      <th>年龄</th>
      <th>性别</th>
    </tr>
  </thead>
  <tbody id="tableBody"></tbody>
</table>
const users = [
  { name: "Tom", age: 18, gender: "male" },
  { name: "Jack", age: 20, gender: "male" },
  { name: "Lucy", age: 22, gender: "female" }
];

const tableBody = document.getElementById("tableBody");

users.forEach(user => {
  const tr = document.createElement("tr");

  Object.values(user).forEach(value => {
    const td = document.createElement("td");
    td.textContent = value;
    tr.appendChild(td);
  });

  tableBody.appendChild(tr);
});

如上代码所示,我们通过Object.values()方法来获取json对象中的values,然后通过循环来将这些values渲染到表格的单元格中。

例子二:将json对象转成表单数据

假设我们现在有一个表单,里面包含了一些输入框,我们需要将表单中的数据转成json对象。我们可以使用以上所述的方法来实现这个需求。具体代码如下所示:

<form>
  <div>
    <label for="name">名字:</label>
    <input type="text" id="name" name="name">
  </div>
  <div>
    <label for="age">年龄:</label>
    <input type="number" id="age" name="age">
  </div>
  <div>
    <label for="gender">性别:</label>
    <select id="gender" name="gender">
      <option value="male">男</option>
      <option value="female">女</option>
    </select>
  </div>
  <button type="button" id="submitBtn">提交</button>
</form>
const form = document.querySelector("form");
const submitBtn = document.getElementById("submitBtn");
const json = {}; // 存储表单数据的json对象

form.addEventListener("input", () => {
  const formData = new FormData(form); // 获取表单数据

  for (const key of formData.keys()) {
    json[key] = formData.get(key);
  }
});

submitBtn.addEventListener("click", () => {
  console.log(json);
});

如上代码所示,我们通过FormData对象来获取表单中的数据,然后通过循环将这些数据转成json对象存储起来。最后,当用户点击提交按钮时,我们将存储的json对象打印到控制台中。

以上就是JS操作json对象key、value的常用方法分析的完整攻略,希望能对你有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JS操作json对象key、value的常用方法分析 - Python技术站

(0)
上一篇 2023年5月27日
下一篇 2023年5月27日

相关文章

  • Validform+layer实现漂亮的表单验证特效

    下面我将详细讲解如何使用Validform和layer实现漂亮的表单验证特效。攻略分为以下几个步骤: 步骤一:引入相关JavaScript文件 首先,在HTML页面中引入Validform和layer的相关JavaScript文件。你可以在官网下载这两个文件,也可以使用CDN加速。以下是引入CDN加速文件的示例代码: <script type=&quo…

    JavaScript 2023年6月10日
    00
  • jQuery 开发者应该注意的9个错误

    jQuery 开发者应该注意的9个错误 引入jQuery的方式错误 错误的方式如下: <script src="https://code.jquery.com/jquery-3.5.1.min.js"></script> 在上述代码的例子中,我们通过引入了互联网上的jquery库来使用它。这种方式是错误的,因为该方…

    JavaScript 2023年6月10日
    00
  • JavaScript 面向对象与原型

    JavaScript 面向对象与原型 什么是面向对象? 面向对象编程(Object-oriented programming, OOP)是一种编程模式,它以“对象”作为程序的基本单元,通过对象之间的交互实现程序功能。面向对象编程思想中,将程序拆分成若干个模块,每个模块相当于一个对象,包含自身属性和方法。 JavaScript作为一门面向对象的语言,与其他语言…

    JavaScript 2023年5月27日
    00
  • 公众号SVG动画交互实战代码

    “公众号SVG动画交互实战代码”是一篇涉及到SVG动画实战的代码攻略。本攻略主要介绍了如何使用HTML、CSS、JavaScript和SVG语言来实现有趣、动态的SVG动画,并添加了交互效果。 准备工作 在开始动手之前,有几个准备工作必须要完成。首先,我们需要一个能够编辑代码的文本编辑器,比如Sublime Text、VS Code等。其次,我们需要一些基本…

    JavaScript 2023年6月10日
    00
  • Javascript 闭包详解及实例代码

    JavaScript 闭包详解及实例代码 什么是闭包? 在 JavaScript 中,闭包是一种特殊的函数,它可以访问在它创建时外部作用域的变量和参数,即使这些变量和参数在函数调用时已经不存在了。 简单来说,闭包就是“函数和函数所能够访问的外部变量的一个共同体”。 闭包的运作原理 在 JavaScript 中,每次创建一个函数,都会同时创建一个作用域链(sc…

    JavaScript 2023年6月10日
    00
  • JS面向对象编程——ES6 中class的继承用法详解

    JS面向对象编程——ES6 中class的继承用法详解 1. ES6中的class ES6中引入了class关键字,使得JS中的面向对象编程更为易用和易读。class语法基于原型继承实现,更加直观和易于理解,在编写复杂程序时更为方便。 下面是一个class的示例代码: class Person { constructor(name, age) { this.…

    JavaScript 2023年5月27日
    00
  • javascript 基础简介 适合新手学习

    JavaScript 基础简介 适合新手学习 JavaScript 是一种广泛应用于编写网页脚本的编程语言。学习 JavaScript 对于新手来说是一项基础工作,本文章为新手介绍 JavaScript 的基础语法、数据类型、流程控制以及实例应用。 JavaScript 基础语法 JavaScript 代码可嵌入 HTML 页面的 \ 标签中。有两种方式,一…

    JavaScript 2023年5月18日
    00
  • 浅谈JavaScript function函数种类

    浅谈JavaScript function函数种类 在JavaScript中,函数是一种非常重要的概念。函数就是一段代码块,可以被多次调用。JavaScript中的函数又可以分为多种类型,下面我们将详细介绍这些类型。 1. 函数声明 函数声明是最常见的函数类型。它是使用function关键字定义的一个函数。函数声明的基本语法如下: function func…

    JavaScript 2023年5月27日
    00
合作推广
合作推广
分享本页
返回顶部