<script>let nums=[]functionsum(...args){
nums.push(...args)if(nums.length>=5){const out =(nums.slice(0,5).reduce((prev,res)=>{return res+=prev},0))// 累加之后清空数组
nums =[]return out
}else{return sum
}}
console.log(sum(1,1,1)(1,1))</script>
调优
<script>functionsumMaker(len){let nums =[]functionmySum(...args){
nums.push(...args)if(nums.length>=len){const res = nums.slice(0,len).reduce((prev,out)=>{return out+=prev},0)
nums=[]return res
}else{return mySum
}}return mySum
}
console.log(sumMaker(4)(1,2)(3,4))</script>