JSON ลิสต์

作为 JSON 对象的数组

ตัวอย่าง

[  "Porsche", "BMW", "Volvo" ]

JSON 中的数组几乎与 JavaScript 中的数组相同。

在 JSON 中,数组值的类型必须属于字符串、数字、对象、数组、布尔或 null。

在 JavaScript 中,数组值可以是以上所有类型,外加任何其他有效的 JavaScript 表达式,包括函数、日期和 undefined。

JSON 对象中的数组

数组可以是对象属性的值:

ตัวอย่าง

{
"name":"Bill Gates",
"age":62,
"cars":[ "Porsche", "BMW", "Volvo" ]
}

访问数组值

您可以通过使用索引号来访问数组值:

ตัวอย่าง

x = myObj.cars[0];

ทดลองด้วยตัวเอง

遍历数组

您可以通过使用 for-in 循环来访问数组值:

ตัวอย่าง

for (i in myObj.cars) {
     x  += myObj.cars[i];
}

ทดลองด้วยตัวเอง

或者您可以使用 for 循环:

ตัวอย่าง

for (i  = 0; i < myObj.cars.length; i++) {
    x  += myObj.cars[i];
}

ทดลองด้วยตัวเอง

JSON 对象中的嵌套数组

数组中的值也可以另一个数组,或者甚至另一个 JSON 对象:

ตัวอย่าง

myObj =  {
   "name":"Bill Gates",
   "age":62,
   "cars": [
	  {"name":"Porsche",  "models":[ "911", "Taycan" ]},
	  {"name":"BMW", "models":[ "M5", "M3", "X5" ]},
	  {"name":"Volvo", "models":[ "XC60", "V60" ]}
   ]
}

ถ้าต้องการเข้าถึงแนวตารางภายในแนวตาราง ให้ใช้วนหลวง for-in สำหรับแนวตารางแต่ละแนว

ตัวอย่าง

for (i in myObj.cars) {
    x += "<h1>" + myObj.cars[i].name  + "</h1>";
    for (j in myObj.cars[i].models) {
         x += myObj.cars[i].models[j];
    }
}

ทดลองด้วยตัวเอง

แก้ไขค่าในแนวตาราง

ใช้เลขที่ดัชนีเพื่อแก้ไขค่าในแนวตาราง

ตัวอย่าง

myObj.cars[1] = "Mercedes Benz";

ทดลองด้วยตัวเอง

ลบโครงสร้างของแถวในแนวตาราง

ใช้ delete ใช้คำสั่ง delete มาลบโครงสร้างของแถวในแนวตาราง

ตัวอย่าง

delete myObj.cars[1];

ทดลองด้วยตัวเอง