一篇文章带你了解JavaScript json 对象

开发 前端
本文基于JavaScript基础,介绍了json 对象中,语法的使用,如何去访问对中的值,如何去循环对象。如何去嵌套JSON 对象。对象中如何去嵌套数组,常见的修改,删除数组,都做了详细的讲解。

 一、对象的语法
JSON 对象被大括号环绕 {},JSON 对象被写成key/value。

  1. "name":"John""age":30, "car":null } 

key必须是字符串,并且value必须是一个有效的JSON数据类型(字符串、数字、对象、数组、布尔值或空),Keys 和 values 由冒号分隔,每个key/value对被逗号分隔。

二、访问对象的值
可以使用点(.)访问对象值。

  1. <!DOCTYPE html> 
  2. <html lang="en"
  3. <head> 
  4. <meta charset="UTF-8"
  5. <title>项目</title> 
  6. </head> 
  7. <body style="background-color: aqua;"
  8.  
  9. <p>Access a JSON object using dot notation:</p> 
  10.  
  11. <p id="demo"></p> 
  12.  
  13. <script> 
  14. var myObj, x; 
  15. myObj = { 
  16. "name""John"
  17. "age": 30, 
  18. "car"null 
  19. }; 
  20. x = myObj.name
  21. document.getElementById("demo").innerHTML = x; 
  22. </script> 
  23.  
  24.  
  25. </body> 
  26. </html> 

还可以使用方括号([])访问对象值:

  1. <script> 
  2. var myObj, x; 
  3. myObj = { 
  4. "name""John"
  5. "age": 30, 
  6. "car"null 
  7. }; 
  8. x = myObj["name"]; 
  9. document.getElementById("demo").innerHTML = x; 
  10. </script> 

三、循环一个对象
可以使用for-in循环,遍历一个对象。

  1. <script> 
  2. var myObj = { 
  3. "name""John"
  4. "age": 30, 
  5. "car"null 
  6. }; 
  7. for (x in myObj) { 
  8. document.getElementById("demo").innerHTML += x + "<br>"
  9. </script> 

使用括号表示法访问属性值:

  1. <script> 
  2. var myObj, x; 
  3. myObj = { 
  4. "name""John"
  5. "age": 30, 
  6. "car"null 
  7. }; 
  8. x = myObj["name"]; 
  9. document.getElementById("demo").innerHTML = x; 
  10. </script> 

四、嵌套的 JSON 对象
JSON的值可以是另外一个JSON对象。

  1. myObj = { 
  2.    "name":"John"
  3.    "age":30, 
  4.    "cars": { 
  5.        "car1":"Ford"
  6.        "car2":"BMW"
  7.        "car3":"Fiat" 
  8.   } 

您可以访问嵌套的JSON对象使用点符号或括号:

  1. x = myObj.cars.car2; 
  2. //or
  3. x = myObj.cars["car2"]; 

1. 修改值
你可以使用点表示法修改JSON对象的任何值:

  1. myObj.cars.car2 = "Mercedes"

js完整代码

  1. <script> 
  2.     var myObj, i, x = ""
  3.     myObj = { 
  4.       "name":"John"
  5.       "age":30, 
  6.       "cars": { 
  7.         "car1":"Ford"
  8.         "car2":"BMW"
  9.         "car3":"Fiat" 
  10.       } 
  11.     } 
  12.     myObj.cars.car2 = "Mercedes"
  13.  
  14.     for (i in myObj.cars) { 
  15.         x += myObj.cars[i] + "<br>"
  16.     } 
  17.  
  18.     document.getElementById("demo").innerHTML = x; 
  19. </script> 

你也可以使用方括号来修改一个JSON对象值:

  1. myObj.cars["car2"] = "Mercedes"

js完整代码:

  1. <script> 
  2.   var myObj, i, x = ""
  3.   myObj = { 
  4.     "name":"John"
  5.     "age":30, 
  6.     "cars": { 
  7.       "car1":"Ford"
  8.       "car2":"BMW"
  9.       "car3":"Fiat" 
  10.     } 
  11.   } 
  12.   myObj.cars["car2"] = "Mercedes"
  13.  
  14.   for (i in myObj.cars) { 
  15.       x += myObj.cars[i] + "<br>"
  16.   } 
  17.  
  18.   document.getElementById("demo").innerHTML = x; 
  19. </script> 

2. 删除对象的属性
使用delete关键字从JSON对象删除一个属性:

  1. delete myObj.cars.car2; 

完整代码:

  1. <!DOCTYPE html> 
  2. <html lang="en"
  3.   <head> 
  4.     <meta charset="UTF-8"
  5.     <title>项目</title> 
  6.   </head> 
  7.   <body style="background-color: aqua;"
  8.  
  9.     <p>How to delete properties of a JSON object.</p> 
  10.  
  11.     <p id="demo"></p> 
  12.  
  13.     <script> 
  14.       var myObj, i, x = ""
  15.       myObj = { 
  16.         "name""John"
  17.         "age": 30, 
  18.         "cars": { 
  19.           "car1""Ford"
  20.           "car2""BMW"
  21.           "car3""Fiat" 
  22.         } 
  23.       } 
  24.       delete myObj.cars.car2; //通过语句删除内容。 
  25.  
  26.       for (i in myObj.cars) { 
  27.         x += myObj.cars[i] + "<br>"
  28.       } 
  29.  
  30.       document.getElementById("demo").innerHTML = x; 
  31. </script> 
  32.  
  33.   </body> 
  34. </html> 

五、总结
本文基于JavaScript基础,介绍了json 对象中,语法的使用,如何去访问对中的值,如何去循环对象。如何去嵌套JSON 对象。对象中如何去嵌套数组,常见的修改,删除数组,都做了详细的讲解。

通过丰富的案例分析,效果图的展示,能够帮助你更好的理解。

 

责任编辑:姜华 来源: 前端进阶学习交流
相关推荐

2023-07-25 16:06:57

JavaScript对象

2023-06-06 15:45:40

JavaScript数组

2021-01-08 09:03:01

JavaScript 数组数据

2024-07-02 14:14:18

2023-08-27 15:18:17

JavaScriptRegExp

2023-05-30 15:06:21

JavaScript属性开发

2021-07-02 10:00:50

JavaScriptObject 函数

2023-07-06 14:40:38

2024-09-02 14:07:05

2021-06-04 09:56:01

JavaScript 前端switch

2021-02-02 18:39:05

JavaScript

2020-11-10 10:48:10

JavaScript属性对象

2021-01-29 18:41:16

JavaScript函数语法

2021-03-09 14:04:01

JavaScriptCookie数据

2021-05-18 08:30:42

JavaScript 前端JavaScript时

2021-03-05 18:04:15

JavaScript循环代码

2021-01-26 23:46:32

JavaScript数据结构前端

2024-04-19 14:23:52

SwitchJavaScript开发

2023-09-06 14:57:46

JavaScript编程语言

2023-07-30 15:18:54

JavaScript属性
点赞
收藏

51CTO技术栈公众号