簡體   English   中英

使用索引和值向現有對象添加元素

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM