如何在javascript中从json读取数据数组

时间:2013-09-11 13:18:12

标签: javascript jquery json

如何在json中迭代数据数组请检查我的代码

Object {bhanu : Array[3], root: Array[12], hari: Array[7], balu: Array[1], santha: Array[6]}

我想迭代这个数组如何做到这一点   我这样使用

function orgChartResult(result)
{
    var userOrgUsers = JSON.parse(result);

    for(var name in userOrgUsers) {
        console.log(name + "=" + userOrgUsers[name]);
    }

    console.log(userOrgUsers);
}

但它提供了所有数据。但我想只读取firstNode数据bhanu中的意思:Arrat [3];我的数组大小是3然后下一个数组大小是12我怎么能逐一阅读

1 个答案:

答案 0 :(得分:0)

我想我会继续回答这个,因为看起来你只需要循环数组。

function orgChartResult(result) {
    var userOrgUsers = JSON.parse(result);

    for(var name in userOrgUsers) {
        console.log(name + "=" + userOrgUsers[name]);

        for (var i = 0; i < userOrgUsers[name].length; i++) {
            console.log(userOrgUsers[name][i]);
        }
    }
}

所以这只是在for找到的数组上进行非常典型的userOrgUsers[name]循环。


如果数组中的每个项目也是对象,则可以添加另一个循环来枚举属性。

function orgChartResult(result) {
    var userOrgUsers = JSON.parse(result);

    for(var name in userOrgUsers) {
        console.log(name + "=" + userOrgUsers[name]);

        for (var i = 0; i < userOrgUsers[name].length; i++) {
            console.log(userOrgUsers[name][i]);

            for (var name2 in userOrgUsers[name][i]) {
                console.log(userOrgUsers[name][i][name2]);
            }
        }
    }
}

如果由于某种原因你不知道JSON的结构,你可以使用一个递归函数来迭代任何Array和Object,并在所有其他成员上调用回调。还有许多其他问题可以解决这个问题。