gpt4 book ai didi

javascript - JavaScript 中的数组求和

转载 作者:行者123 更新时间:2023-11-28 11:12:08 25 4
gpt4 key购买 nike

我有这些数组:

// I want to calculate these arrays each other.
var a = [1,2,3]
var b = [1,2,3]
var c = [3,4,5]
// ->
var result = [5, 8, 11]

我可以用下面的方法计算两个数组,但如何对n个数组求和?

Array.prototype.Sum = function (arr) {
var s = [];
if (arr != null && this.length == arr.length) {
for (var i = 0; i < arr.length; i++) {
var c = this[i] + arr[i]
s.push(c);
}
}
return s;
}

最佳答案

假设

var arrays = [
[1,2,3],
[1,2,3],
[3,4,5]
];

Sum 与 EcmaScript 5 数组方法结合使用,

var result = arrays.reduce(function(arr1, arr2){
return arr1.Sum(arr2);
});

或者,考虑不污染 Array.prototype 并只使用类似 (ES5) 的东西

var result = arrays.reduce(function(arr1, arr2) {
return arr1.map(function(num, index){
return num+arr2[index];
});
});

或者,使用 EcmaScript 6 箭头函数进行简化,

var result = arrays.reduce(
(arr1, arr2) => arr1.map(
(num, index) => num+arr2[index]
)
);

关于javascript - JavaScript 中的数组求和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27537448/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com