我想将数字数组的每个值与其在不同数字数组中的对应值求和,并且我想在不循环遍历每个单独的值的情况下执行此操作。
所以:
var array1 = [1,2,3,4];
var array2 = [5,6,7,8];
var sum = [6,8,10,12];
我很想一下子做到这一点,而不是这样做:
for(var i = 0; i < array1.length; i++){
sum.push(array1[i] + array2[i]);
}
有人能想出办法吗?我很困惑。
最佳答案
我知道这是一个老问题,但我只是与某人讨论这个问题,我们提出了另一个解决方案。您仍然需要一个循环,但可以使用 Array.prototype.map() 来完成此操作。
var array1 = [1,2,3,4];
var array2 = [5,6,7,8];
var sum = array1.map(function (num, idx) {
return num + array2[idx];
}); // [6,8,10,12]
关于javascript - 在单次迭代中对两个数组求和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24094466/