📜  JavaScript JSON 对象

📅  最后修改于: 2021-10-31 05:24:25             🧑  作者: Mango

JSON 对象: JavaScript 对象表示法 (JSON) 是一种基于文本的、人类可读的交换格式,用于在基于 Web 浏览器的代码中表示简单的数据结构和对象。
JavaScript 对象只能存在于 JavaScript 语言中,因此当您处理需要通过各种语言访问的数据时,最好参考 JSON。

声明对象的规则:

  • 对象始终定义在大括号 { } 内。
  • 对象以密钥对的形式写入。
  • 键必须是字符串,它们的值必须是有效的 JSON 数据类型。
    JSON 数据类型可以是数字、字符串、对象、布尔值、数组或空值。
  • 键和值由冒号(“:”)分隔。
  • 每个键或值对用逗号分隔。
myOrder = {};

例子:

myOrder = {
    "name of product" : "earbuds", 
    "cost" : "799", 
    "warranty" : "1 year"
};

访问对象值:

  1. 可以使用点(“.”)表示法访问对象值。
  2. 我们还可以使用方括号([])表示法访问对象。

示例 1:在下面的程序中,我们使用“.”访问对象。符号。

HTML


  

    

Welcome To GFG

    

          


HTML


  

    

Welcome To GFG

    

          


HTML


  

    

Welcome To GFG

    

          


HTML


  

    

Welcome To GFG

    

          


输出:

示例 2:

HTML



  

    

Welcome To GFG

    

          

输出:

在 JSON 中嵌套对象:对象可以嵌套在具有唯一访问路径的其他对象中。在同一个文档中,相同的字段名称可以出现在嵌套的对象中。访问名称必须是唯一的。简而言之,嵌套对象将在其他对象中定义或分配。

例子:

myOrder = {
    "name of product" : "earbuds", 
    "cost" : "799", 
    "warranty" : { 
        "warranty1" : "6 months", 
        "warranty2 : "12 months"
    }
};

在上面的例子中,我们在对象中声明了另一个对象。

注意:我们甚至可以使用点(“.”)表示法访问嵌套对象。

例子:

i = myOrder.warranty.warranty2;

或者

i = myOrder.warranty[warranty2];

修改对象的值要修改值,我们有两种方法。

  1. 对象的值可以使用点(“.”)表示法进行修改。
  2. 对象的值可以通过使用括号(“[ ]”)符号进行修改。

第一个示例:

myOrder.warranty.warranty2 = "3 months";

第二个例子:

i = myOrder.warranty[warranty2] = "3 months";

删除对象属性:我们可以使用“delete”关键字删除 JSON 对象属性。

例子:

delete myOrder.warranty.warranty2;

循环对象:循环可以通过两种方式完成 –

  1. 对象的循环可以通过使用属性 for-in 循环来完成。
  2. 对于循环对象,我们甚至可以在 for-in 循环属性中使用方括号(“[]”)。

示例 1:

HTML



  

    

Welcome To GFG

    

          

输出:

myObj = {
    "name of product" : "earbuds", 
    "cost" : "799", 
    "warranty" : "1 year"
};
for (a in myOrder) {
    document.getElementById(
        "Accessingobj").innerHTML = a;
}

在上面的这个例子中,我们试图只显示对象。

示例 2:在下面的示例中,我们使用括号 [] 符号访问循环对象。

HTML



  

    

Welcome To GFG

    

          

输出:

myObj = {
    "name of product" : "earbuds", 
    "cost" : "799", 
    "warranty" : "1 year"
}; 

for (a in myOrder) {
    document.getElementById("Accessingobj")
        .innerHTML = myOrder[a];
}