创建一个计算两个参数之和的 function。如果只有一个参数,则返回一个 function,该 function 请求一个参数然后返回求和的结果。
例如,add(2, 3)
应该返回 5
,而 add(2)
应该返回一个 function。
调用这个有一个参数的返回的 function,返回求和的结果:
var sumTwoAnd = add(2);
sumTwoAnd(3)
返回 5
。
如果两个参数都不是有效的数字,则返回 undefined。
如果你被卡住了,记得开大招 Read-Search-Ask。尝试与他人结伴编程、编写你自己的代码。
这是一些对你有帮助的资源:
简单说就是求和,只是当参数是一个的时候返回的是函数而不是数字,虽然最后功能实现了,但感觉实现的不太好
function add() { if(arguments.length>0){ var sum=0; if(arguments.length==1&&typeof arguments[0]=='number'){ var first=arguments[0]; return function(){ if(typeof arguments[0]=='number'){ return first+arguments[0]; } else{ return undefined; } }; } else{ for(var i=0;i<arguments.length;i++){ if(typeof arguments[i]!=='number'){ return undefined; }else{ sum+=arguments[i]; } } return sum; } }else{ return undefined; } }