6、JSON数组
作为 JSON 对象的数组:
实例
[ "Porsche", "BMW", "Volvo" ]
JSON 中的数组几乎与 JavaScript 中的数组相同。
在 JSON 中,数组值的类型必须属于字符串、数字、对象、数组、布尔或 null。
在 JavaScript 中,数组值可以是以上所有类型,外加任何其他有效的 JavaScript 表达式,包括函数、日期和 undefined。
JSON 对象中的数组
数组可以是对象属性的值:
{
"name":"Bill Gates",
"age":62,
"cars":[ "Porsche", "BMW", "Volvo" ]
}
遍历数组
通过使用 for-in 循环或者 for 循环来访问数组值:
// 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 myObj.cars[1];