一篇文章帶你了解JavaScript json 對象
一、對象的語法
JSON 對象被大括號環(huán)繞 {},JSON 對象被寫成key/value。
- { "name":"John", "age":30, "car":null }
key必須是字符串,并且value必須是一個有效的JSON數(shù)據(jù)類型(字符串、數(shù)字、對象、數(shù)組、布爾值或空),Keys 和 values 由冒號分隔,每個key/value對被逗號分隔。
二、訪問對象的值
可以使用點(.)訪問對象值。
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <title>項目</title>
- </head>
- <body style="background-color: aqua;">
- <p>Access a JSON object using dot notation:</p>
- <p id="demo"></p>
- <script>
- var myObj, x;
- myObj = {
- "name": "John",
- "age": 30,
- "car": null
- };
- x = myObj.name;
- document.getElementById("demo").innerHTML = x;
- </script>
- </body>
- </html>
還可以使用方括號([])訪問對象值:
- <script>
- var myObj, x;
- myObj = {
- "name": "John",
- "age": 30,
- "car": null
- };
- x = myObj["name"];
- document.getElementById("demo").innerHTML = x;
- </script>
三、循環(huán)一個對象
可以使用for-in循環(huán),遍歷一個對象。
- <script>
- var myObj = {
- "name": "John",
- "age": 30,
- "car": null
- };
- for (x in myObj) {
- document.getElementById("demo").innerHTML += x + "<br>";
- }
- </script>
使用括號表示法訪問屬性值:
- <script>
- var myObj, x;
- myObj = {
- "name": "John",
- "age": 30,
- "car": null
- };
- x = myObj["name"];
- document.getElementById("demo").innerHTML = x;
- </script>
四、嵌套的 JSON 對象
JSON的值可以是另外一個JSON對象。
- myObj = {
- "name":"John",
- "age":30,
- "cars": {
- "car1":"Ford",
- "car2":"BMW",
- "car3":"Fiat"
- }
- }
您可以訪問嵌套的JSON對象使用點符號或括號:
- x = myObj.cars.car2;
- //or:
- x = myObj.cars["car2"];
1. 修改值
你可以使用點表示法修改JSON對象的任何值:
- myObj.cars.car2 = "Mercedes";
js完整代碼:
- <script>
- var myObj, i, x = "";
- myObj = {
- "name":"John",
- "age":30,
- "cars": {
- "car1":"Ford",
- "car2":"BMW",
- "car3":"Fiat"
- }
- }
- myObj.cars.car2 = "Mercedes";
- for (i in myObj.cars) {
- x += myObj.cars[i] + "<br>";
- }
- document.getElementById("demo").innerHTML = x;
- </script>
你也可以使用方括號來修改一個JSON對象值:
- myObj.cars["car2"] = "Mercedes";
js完整代碼:
- <script>
- var myObj, i, x = "";
- myObj = {
- "name":"John",
- "age":30,
- "cars": {
- "car1":"Ford",
- "car2":"BMW",
- "car3":"Fiat"
- }
- }
- myObj.cars["car2"] = "Mercedes";
- for (i in myObj.cars) {
- x += myObj.cars[i] + "<br>";
- }
- document.getElementById("demo").innerHTML = x;
- </script>
2. 刪除對象的屬性
使用delete關(guān)鍵字從JSON對象刪除一個屬性:
- delete myObj.cars.car2;
完整代碼:
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <title>項目</title>
- </head>
- <body style="background-color: aqua;">
- <p>How to delete properties of a JSON object.</p>
- <p id="demo"></p>
- <script>
- var myObj, i, x = "";
- myObj = {
- "name": "John",
- "age": 30,
- "cars": {
- "car1": "Ford",
- "car2": "BMW",
- "car3": "Fiat"
- }
- }
- delete myObj.cars.car2; //通過語句刪除內(nèi)容。
- for (i in myObj.cars) {
- x += myObj.cars[i] + "<br>";
- }
- document.getElementById("demo").innerHTML = x;
- </script>
- </body>
- </html>
五、總結(jié)
本文基于JavaScript基礎(chǔ),介紹了json 對象中,語法的使用,如何去訪問對中的值,如何去循環(huán)對象。如何去嵌套JSON 對象。對象中如何去嵌套數(shù)組,常見的修改,刪除數(shù)組,都做了詳細(xì)的講解。
通過豐富的案例分析,效果圖的展示,能夠幫助你更好的理解。