当我console.log(response);
时:
> [{..}]
//expanded
0:
testmessage:
testrep:
12-12-09: {value1: 200, value2: 150, value3: 165}
12-23-12: {value1: 20, value2: 150, value3: 165}
01-04-16: {value1: 0, value2: 150, value3: 165}
12-16-09: {value1: 150, value2: 150, value3: 165}
当我console.log(response[0].testmessage.testrep);
时:
> {2017-11-20: {…}, 2017-11-21: {…}, 2017-11-22: {…}, 2017-11-23: {…}}
//expanded
12-12-09: {value1: 200, value2: 150, value3: 165}
12-23-12: {value1: 20, value2: 150, value3: 165}
01-04-16: {value1: 0, value2: 150, value3: 165}
12-16-09: {value1: 150, value2: 150, value3: 165}
我正在尝试遍历testrep
中的每个日期行并获取值#values。
我尝试使用var len = response[0].testmessage.testrep.length
来获取长度,因此我可以遍历并获取字段,但它返回null
。
如何实现循环并获取每个日期的值。
答案 0 :(得分:1)
response[0].testmessage.testrep
是一个对象。由于JS中的对象没有length属性,因此可以通过执行Object.keys(response[0].testmessage.testrep).length
来获取长度。
但是因为你想要循环。有几种方法可以在JS中迭代对象。一个简单的方法是:
for(var date in response[0].testmessage.testrep) { //javascript 'var'
var data = response[0].testmessage.testrep[date];
// do somethings here with data and date
}