var obj = { a1 : {key1: 50, key2:60, key3:0}, a2 : {key1: 0, key2:60, key3:0}, a3 : {key1: 50, key2:0, key3:0}, a4 : {key1: 50, key2:60, key3:0} }var arr = [];for(var i in obj) { for(var j in obj[i] ) { arr[j] += obj[i][j]; }}console.log(arr);我想取得a1,z2,z3,z4的key1(key2,key3,key4)值的和,现在打印出来的显示NaN了是怎么回事
1 回答

慕姐8265434
TA贡献1813条经验 获得超2个赞
因为每一个 arr[j]
都没有初始值
应该这样:
arr[j] = arr[j] || 0; arr[j] += obj[i][j];
而且 arr
不应该为数组:
var arr = {};
添加回答
举报
0/150
提交
取消