如何从JSON数组中检索JSON数据?

时间:2018-10-11 05:32:56

标签: javascript json ecmascript-6 ecmascript-5

编写JS代码以遍历数组并获取值。通过数组迭代获得object的价值。

这是要循环的实际JSON。

[ { sum: '[object Object]', count: '[object Object]' },
  { sum: '[object Object]', count: '[object Object]' },
  { sum: '[object Object]', count: '[object Object]' },
  { sum: '[object Object]', count: '[object Object]' },
  { sum: '[object Object]', count: '[object Object]' },
  { sum: '[object Object]', count: '[object Object]' },
  { sum: '[object Object]', count: '[object Object]' } ]

用于遍历数组的示例代码:

var data = [ { sum: '[object Object]', count: '[object Object]' },
  { sum: '[object Object]', count: '[object Object]' },
  { sum: '[object Object]', count: '[object Object]' },
  { sum: '[object Object]', count: '[object Object]' },
  { sum: '[object Object]', count: '[object Object]' },
  { sum: '[object Object]', count: '[object Object]' },
  { sum: '[object Object]', count: '[object Object]' } ]



function newX(data) {
    console.log(data.length);
    for (var i = 0; i < data.length; i++) {
        console.log(JSON.stringify(data[i]));
    }
}
newX(data);

输出:

{"sum":"[object Object]","count":"[object Object]"}
{"sum":"[object Object]","count":"[object Object]"}
{"sum":"[object Object]","count":"[object Object]"}
{"sum":"[object Object]","count":"[object Object]"}
{"sum":"[object Object]","count":"[object Object]"}
{"sum":"[object Object]","count":"[object Object]"}
{"sum":"[object Object]","count":"[object Object]"}

但是这里需要查看实际值。

请让我知道我该怎么做。

谢谢

2 个答案:

答案 0 :(得分:1)

编辑:错误实际上是在jsObject上调用.log(),而不是它的属性。 console.log(data [i] .sum )是唯一要做的更改:D

对象上的toString函数输出[object Object](如果它是一个普通对象),因此您可能试图输出一个没有任何属性的对象,请修复该问题,然后console.log会起作用:)

var data = [ { sum: 'xx', count: 'yy' },
  { sum: 'xy', count: 'yx' }]



function newX(data) {
    console.log(data.length);
    for (var i = 0; i < data.length; i++) {
        console.log("sum: " + data[i].sum + "\ncount: " + data[i].count); 
    }
}
newX(data);

答案 1 :(得分:0)

您不需要使用JSON.stringify。如果要从对象获取值,则需要使用“。”。 (点)属性访问器,您可以阅读有关here

的信息

var data = [ { sum: '[object Object]', count: '[object Object]' },
  { sum: '[object Object]', count: '[object Object]' },
  { sum: '[object Object]', count: '[object Object]' },
  { sum: '[object Object]', count: '[object Object]' },
  { sum: '[object Object]', count: '[object Object]' },
  { sum: '[object Object]', count: '[object Object]' },
  { sum: '[object Object]', count: '[object Object]' } ]



function newX(data) {
    console.log(data.length);
    for (var i = 0; i < data.length; i++) {
        console.log('sum = '+data[i].sum + '  count = '+data[i].count);
    }
}
newX(data);