有人可以在下面的代码中解释“ forEach”方法如何工作吗?

问题描述 投票:-1回答:1

针对该问题,我受命创建一个模仿reduce方法的函数并进行测试反对以下我应该得到8的答案。

我不知道回调(acc,el,index,arr)部分如何带来“ add”功能。对于(a,b)的2个参数,forEach的参数在哪里起作用?

 // function to mimic reduce
    function reduce(array, callback, initial) {
        if(Array.isArray(array) {
            let acc;
        if (initial === undefined) {
            acc = array[0];
            array = array.slice(1);
            } else {
            acc = initial;
            }
            array.forEach(function(el, index, arr) {
                acc = callback(acc, el, index, arr);
            });
            return acc;
        }
        return "The first arg should be an array";
    }


    // Code to test against reduce function
    var nums = [4, 1, 3]
    var add = function(a, b) { return a + b;}


reduce(nums, add, 0) // answer is 8
javascript foreach callback
1个回答
2
投票

通话时

© www.soinside.com 2019 - 2024. All rights reserved.