手写reduce()

        function reduce(arr, callBack ,initVal){
            if(!Array.isArray(arr) || !arr.length || typeof callBack != 'function') return [];
            let hasInitVal = initVal !== 'undefined';
            let val = hasInitVal ? initVal : arr[0];
            for(let i = 0, len = arr.length; i<len; i++){
                val = callBack(value, arr[i], i, arr);
            }
            return val
        }

 

posted @ 2020-07-10 11:55  朝思暮想的虫  阅读(736)  评论(0编辑  收藏  举报