淘先锋技术网

首页 1 2 3 4 5 6 7

JSON是一种轻量级的数据交换格式,在各种Web应用中广泛使用。不过,当JSON数据结构中嵌套了多层嵌套的对象或数组时,有时需要从中越级选取某些数据。

json中越级选取

JSON中越级选取可以通过点号和方括号来实现。例如:


var myObj = {
    "name": "John",
    "age": 30,
    "city": "New York",
    "pets": [
        {
            "type": "cat",
            "name": "Mittens",
            "age": 5
        },
        {
            "type": "dog",
            "name": "Fido",
            "age": 3
        }
    ]
};

var petName = myObj.pets[0].name; // "Mittens"

在上面的例子中,可以通过点号和方括号来越级选取嵌套在pets数组中的第一个对象的name属性。

另外一种情况是JSON数据结构中可能嵌套了许多层嵌套的对象或数组。这时,可以使用递归来遍历整个数据结构,找到需要的数据。例如:


function findPetAge(obj) {
    for (var key in obj) {
        if (typeof obj[key] === "object") {
            findPetAge(obj[key]);
        } else {
            if (key === "age") {
                console.log(obj[key]);
            }
        }
    }
}

findPetAge(myObj); // 5, 3

在上面的例子中,使用了递归函数来遍历整个JSON数据结构,找到每个嵌套对象中的age属性并输出。

总之,JSON中越级选取可以通过点号和方括号来实现,还可以使用递归来遍历整个数据结构来找到需要的数据。