[英]Add element to existing object with index and value
我想迭代两个数组,从另一个数组中减去一个数组值,并将它们的特定差值添加到对象中。 所以我举例说:
var answer = [];
var boom = [1,2,3,4];
var other = [[1,2,3,4],
[2,3,4,5],
[6,7,8,9];
for(var i=0; i<other.length; i++) {
for(var e=0; e<4; e++){
answer[e] = boom[e] - other[i][e];
}
}
这给了我一个输出:
Object {0: -5, 1: -5, 2: -5, 3: -5}
在我正在寻找的other
减去了最后一个数组的boom
,我认为我非常接近它是:
Object [{0: [ 0, 0, 0, 0]},
{1: [-1,-1,-1,-1]},
{2: [-5,-5,-5,-5]}];
您可以看到它会将第二个for循环的每次迭代的结果添加到对象answer
。 我怎么能做到这一点?
for(var i=0; i<other.length; i++) {
answer[i] = [];
for(var e=0; e<4; e++){
answer[i][e] = boom[e] - other[i][e];
}
}
您需要将answer
初始化为对象而不是数组,还需要创建一个新的答案数组来表示other
值中的值
var answer = {};
var boom = [1, 2, 3, 4];
var other = [
[1, 2, 3, 4],
[2, 3, 4, 5],
[6, 7, 8, 9]
];
for (var i = 0; i < other.length; i++) {
var temp = answer[i] = {};
for (var e = 0; e < 4; e++) {
temp[e] = boom[e] - other[i][e];
}
}
演示: 小提琴
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.