创建一个计算两个参数之和的 function。如果只有一个参数,则返回一个 function,该 function 请求一个参数然后返回求和的结果。
例如,add(2, 3)
应该返回 5
,而 add(2)
应该返回一个 function。
调用这个有一个参数的返回的 function,返回求和的结果:
var sumtwoand = add(2);
sumtwoand(3)
返回 5
。
如果两个参数都不是有效的数字,则返回 undefined。
add(2, 3)
应该返回 5。add(2)(3)
应该返回 5。add("http://bit.ly/iqt6zt")
应该返回 undefined。add(2, "3")
应该返回 undefined。add(2)([3])
应该返回 undefined。function add() { //判断函数只有一个参数且是数字;否则判断两个参数是否都为数字; if(arguments.length === 1 && typeof arguments[0] == "number"){ var x = arguments[0]; //重点 return function(y){ if(typeof y == "number"){ return x + y; } }; }else{ if(typeof arguments[0] == "number" && typeof arguments[1] == "number"){ return arguments[0] + arguments[1]; } } } add(2, 3);
如对本文有疑问, 点击进行留言回复!!
同事牛逼啊,写了个隐藏 bug,我排查了 3 天才解决问题!
【JavaScript笔记(一)】万丈高楼平地起 - 基本概念篇
轻松解决 org.apache.taglibs.standard.tlv.JstlCoreTLV 困惑
网友评论