我的一个朋友要求我编写一个适用于这两种情况的函数
add(2,4) // 6
add(2)(4) // 6
我的直觉是编写一个返回自身的 add() 函数,但我不确定我是否朝着正确的方向前进。这失败了。
function add(num1, num2){
if (num1 && num2){
return num1 + num2;
} else {
return this;
}
}
alert(add(1)(2));
所以我开始阅读返回其他函数或返回自身的函数。
- http://davidwalsh.name/javascript-functions
- JavaScript:自调用函数返回一个闭包。它是干什么用的?
- JavaScript:自调用函数返回一个闭包。它是干什么用的?
我会继续尝试,但如果有人有一个巧妙的解决方案,我很乐意看到它!