最普通的 eval 递归 reduce
function sum(arr){ var s=0; for(var i=0;i<arr.length;i++){ s=s+arr[i]; } return s; } function sum(arr){ return eval(arr.join("+")); } function sum(arr){ if(arr.length===0){ return 0; }else if(arr.length===1){ return arr[0]; }else{ return arr[0]+sum(arr.slice(1)); } } function sum(arr){ return arr.reduce(function(a,b){ return a+b; },0); } console.log(sum([1,2,3,4,5]));
eval(string) 执行传入的字符串
reduce(fun,可选n) 接收函数作为累加器 可选的n是传给函数的初始值