2016-07-11 104 views
-3

說我有兩個數組:如何將兩個數組的每個值添加到第三個數組中?

[[1], [2], [3], [4], [5]] 

[[1], [2], [1], [3], [4]] 

我要添加的每個值,使:

[[2], [4], [4], [7], [9]] 

什麼是做到這一點的最好方法是什麼?

+1

你要真的在數組中的阿雷? –

+4

那麼,你有什麼嘗試?你有什麼研究成果?你試圖解決問題的方式是什麼? –

+3

它是數組的數組還是數組數組? – haim770

回答

3

使用map()

var a = [1,2,3,4,5], 
    b = [1,2,3,4,5]; 

a.map(function(v, i) { return v + b[i] }); 

MDN

+0

謝謝,map()正是什麼我在之後。 – egg

0

像這樣:

var res = []; 
for(var i=0;i<arr1.length;++i) 
{ 
    for(var j=0;j<arr1.length;++j) 
     res.push((arr1[i] + arr2[j])); 
} 
return res; 
0

可以做到使用map像這樣(demo

var a = [[1], [2], [3], [4], [5]]; 
var b = [[1], [2], [1], [3], [4]]; 

var result = a.map(function(value, index){ 
    return [a[index][0] + b[index][0]]; 
}); 

console.log(result); 

輸出

[ [ 2 ], [ 4 ], [ 4 ], [ 7 ], [ 9 ] ] 

在線演示 - https://repl.it/CacI/1

1

你可以遍歷數組的項目,並創建您隨時隨地結果數組。

var firstArray = [[1], [2], [3], [4], [5]]; 
var secondArray = [[1], [2], [1], [3], [4]]; 
var thirdArray = []; 
firstArray.forEach(function(ele, index){ 
    thirdArray.push([ele[0] + secondArray[index][0]]) 
}); 
+0

請編輯更多信息。僅限代碼和「嘗試這個」的答案是不鼓勵的,因爲它們不包含可搜索的內容,也不解釋爲什麼有人應該「嘗試這個」。我們在這裏努力成爲知識的資源。 –

0

您可以使用.forEeach().map()

的主要區別在這個例子中看到:

.map()返回通過採取對原項目的一些行動創建的對象的新數組。

.forEach()什麼也沒有返回,它只是迭代Array爲每個項目執行給定的操作。


實施例使用.forEach():

var data1 = [[1], [2], [3], [4], [5]], 
 
    data2 = [[1], [2], [1], [3], [4]], 
 
    result = []; 
 
data1.forEach(function(item, index){ 
 
    result.push([item[0] + data2[index][0]]); 
 
}); 
 
console.log(result); 
 
// result = [[2], [4], [4], [7], [9]]

實施例使用.MAP():

var data1 = [[1], [2], [3], [4], [5]], 
 
    data2 = [[1], [2], [1], [3], [4]], 
 
    result; 
 
result = data1.map(function(currentValue, i){ 
 
    return [data1[i][0] + data2[i][0]]; 
 
}); 
 
console.log(result); 
 
// result = [[2], [4], [4], [7], [9]]

0

您可以使用兩個數組的一個forEach循環,像這樣做:

var arr1 = [[1], [2], [3], [4], [5]]; 
 
var arr2 = [[1], [2], [1], [3], [4]]; 
 
var sum = []; 
 
arr1.forEach(function(e,i){ 
 
    sum.push([e[0]+arr2[i][0]]); 
 
    console.log(sum[i]); 
 
});

相關問題