/*
@param { Array } arr
@param { Function } callback
@param { * } initValue
*/
function reduce(arr,callback,initValue){
// 声明变量
let result = initValue
// 执行回调
for(let i=0;i<arr.length;i++){
result = callback(result,arr[i])
}
// 返回最终的结果
return result
}
<script>
let arr = [1,2,3,4,5]
const result = reduce(arr,(res,value) =>{
return res + value
},1)
console.log(result)
</script>