JavaScript json 数组



数组作为JSON对象

[ "Ford", "BMW", "Fiat" ]

在JSON中的数组,几乎和在JavaScript中数组相同。

在JSON中,数组的值必须是字符串,数字、对象、数组、布尔值或空.

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


JSON对象中的数组

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

{
"name":"John",
"age":30,
"cars":[ "Ford", "BMW", "Fiat" ]
}

访问数组的值

使用索引号访问数组值:

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":"John",
    "age":30,
    "cars": [
        { "name":"Ford", "models":[ "Fiesta", "Focus", "Mustang" ] },
        { "name":"BMW", "models":[ "320", "X3", "X5" ] },
        { "name":"Fiat", "models":[ "500", "Panda" ] }
    ]
 }

访问数组内部的数组, 使用for-in loop循环:

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";

让我试试


删除数组中的项目

使用delete关键字从数组中删除:

delete myObj.cars[1];

让我试试