Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/440.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript json数组的内容-如何使用js获取所有元素_Javascript_Json - Fatal编程技术网

Javascript json数组的内容-如何使用js获取所有元素

Javascript json数组的内容-如何使用js获取所有元素,javascript,json,Javascript,Json,我试图在json字符串中获取数组(未知大小)的内容 以下是: var text = '[ { "_id" : { "$oid" : "54426dbfe4b0a1df0eb4a0f6"} , "user" : "fran" , "fecha" : "18/10/2014" , "time" : "7"} , { "_id" : { "$oid" : "54426efae4b00975f860fc06"} , "user" : "elle" , "fecha" : "18/10/2014" , "

我试图在json字符串中获取数组(未知大小)的内容

以下是:

var text = '[ { "_id" : { "$oid" : "54426dbfe4b0a1df0eb4a0f6"} , "user" : "fran" , "fecha" : "18/10/2014" , "time" : "7"} , { "_id" : { "$oid" : "54426efae4b00975f860fc06"} , "user" : "elle" , "fecha" : "18/10/2014" , "time" : "9" , "w" : { "w1" : "dog, dok" , "w2" : "cat, kat", "w3" : "pork, porc"}} ]';

obj = JSON.parse(text); 
document.getElementById("demo").innerHTML =
//obj[0].score;
//obj[0].user;
//obj[1].w.w1;
for (var i in obj[1].w) {
console.log(i);
}
如何循环并获得“w”的所有值


问候。

尝试以下方法

for (var i in obj[1].w) {
  console.log(obj[1].w[i]);
}

您已经基本掌握了它,在for循环中只需
obj[1].w[i]
即可访问每个值


请记住,此代码非常依赖于它始终是数组中的第二个对象,您应该使其更具动态性,或者在执行过程中检查错误。

您将需要一些递归的

下面是我写的一些简短的东西,您可能想扩展它:

function print(obj) {
    for (var key in obj) {
        if (typeof obj[key] == 'string') {
            console.log(key + ':' + obj[key]);
        } else {
            console.log(key + ' recursive');
            print(obj[key]);
        }
    }
}

var text = '[ { "_id" : { "$oid" : "54426dbfe4b0a1df0eb4a0f6"} , "user" : "fran" , "fecha" : "18/10/2014" , "time" : "7"} , { "_id" : { "$oid" : "54426efae4b00975f860fc06"} , "user" : "elle" , "fecha" : "18/10/2014" , "time" : "9" , "w" : { "w1" : "dog, dok" , "w2" : "cat, kat", "w3" : "pork, porc"}} ]';

var myObj = JSON.parse(text);
print(myObj);

这是你的答案。

谢谢,我将此标记为正确答案,不仅因为它有效,还因为考虑使其更具活力的额外提示。谢谢,我确实可以对此进行扩展,但是需要一些“快速”的东西,并且需要使用此解决方案进行更多的解析。顺致敬意,