JSON-array

作为 JSON 对象的数组

Exempel

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

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

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

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

JSON 对象中的数组

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

Exempel

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

访问数组值

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

Exempel

x = minObj.cars[0];

Prova själv

遍历数组

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

Exempel

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

Prova själv

或者您可以使用 for 循环:

Exempel

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

Prova själv

JSON 对象中的嵌套数组

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

Exempel

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

För att komma åt en array inuti en array, använd en for-in-loop för varje array:

Exempel

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];
    }
}

Prova själv

Ändra arrayvärde

Använd indexnummer för att ändra arrayen:

Exempel

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

Prova själv

Ta bort arrayobjekt

Använd delete Använd nyckelord för att ta bort objekt från en array:

Exempel

delete myObj.cars[1];

Prova själv