我试图对数组中的值求和。在这种情况下,输出必须是 2868
,但我的 alert
仍然是 0
。
var data = [{
name: 'try1',
y: 1756,
fontWeight: 'bold',
},{
name: 'try2',
y: 756,
fontWeight: 'bold',
},{
name: 'try3',
y: 356,
fontWeight: 'bold',
}]
var dataSum = 0;
for (var i=0;i < data.length;i++) {
dataSum += data.y[i]
}
alert(dataSum);
最佳答案
它应该是 data[i].y
而不是 data.y[i]
因为 data
是你的对象数组和循环通过 data
将为您提供 data[i]
中的每个对象,然后从 data[i]
访问属性 y
> 对象。
var data = [{
name: 'try1',
y: 1756,
fontWeight: 'bold',
},{
name: 'try2',
y: 756,
fontWeight: 'bold',
},{
name: 'try3',
y: 356,
fontWeight: 'bold',
}]
var dataSum = 0;
for (var i=0;i < data.length;i++) {
dataSum += data[i].y
}
alert(dataSum);
关于javascript - 如何总结特定的多种数据类型 JavaScript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49791774/