数组求和的五种方法

307 阅读1分钟

数组求和的方法

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

方法一:递归

function sum(arr){
    const len = arr.length;
    if(len === 0) {
        return 0;
    } else if(len === 1){
        return arr[0];
    } else {
        return arr[0] + sum(arr.slice(1));
    }
}

方法二:循环

function sum(arr) {
    let s = 0;
    for(let i=0; i<arr.length; i++){
        s += arr[i]
    }
    return s;
}

方法三:map-reduce

function sum(arr) {
    return arr.reduce((prev,curr)=>prev+curr)
}

方法四:forEach

function sum(arr) {
    let s = 0;
    arr.forEach(val=>s +=val,0)
    return s;
}

方法五:eval

function sum(arr) {
    return eval(arr.join("+"));
}

console.log(sum(arr))