js 数组求和多种方法

1. for循环方法

for循环方法可以循环遍历数组,从而给数组元素求和

let arr = [1,2,3,4,5,1];

function one(arr){    
    let sum = 0;
    for(var i = 0;i

2. every()方法

every() 可以检测数组中每个元素是否都符合条件 , 从而求和

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

function one(arr){
    let sum = 0;
    arr.forEach( function(item){
       sum += item ;
    });
    return sum ;    
}

console.log(one(arr));

3.some方法

some方法可以用来检测数组中的元素是否满足指定条件 , 从而给数组元素求和

 let arr = [1, 2, 3, 4, 5, 1];
 function one(arr) {
     let sum = 0;
     arr.some(function (item) {
         sum += item;
         return false;
     });
     return sum;
 }
 console.log(one(arr));

4.map()方法

map()方法可以通过指定的函数处理数组的每个元素 然后返回处理后的数组

let arr = [1, 2, 3, 4, 5, 1];
function one(arr) {
    let sum = 0;
    arr.map(function (item) {
        sum += item;
    });
    return sum;
}
console.log(one(arr));

5.filter()方法

filter()方法可以检测数组中元素 并返回符合条件的所有元素的数组

let arr = [1, 2, 3, 4, 5, 1];
function one(arr) {
    let sum = 0;
    arr.filter(function (item) {
        sum += item;
    });
    return sum;
}
console.log(one(arr));

6.foreach()方法

forEach可以调用数组中每个元素

let arr = [1, 2, 3, 4, 5, 1];
function one(arr) {
    let sum = 0;
    arr.forEach(function (item) {
        sum += item;
    });
    return sum;
}
console.log(one(arr));

7.Array.prototype方法

原型内置方法求和

let arr = [1, 2, 3, 4];
Array.prototype.sum = function () {
    let sum = 0;
    for (let i = 0; i < this.length; i++) {
        sum += this[i];
    }
    return sum;
};
console.log(arr.sum()); // 10

8.reduce()方法

reduce()求数组项之和

let arr = [1, 2, 3, 5]
        
varsum = arr.reduce(function (prev, cur) {
    return prev + cur;
}, 0);
console.log(varsum);

由于传入了初始值0 , 所以开始时 prev值的值为0 ,cur的值为数组第一项 ,相加之后返回值为3 ,作为下一轮回调prev值 , 然后再继续与下一个数项相加 依次类推 直至完成所有数组项的和并返回

你可能感兴趣的:(javascript,开发语言,ecmascript)