函数add同时满足add(a,b)和add(a)(b),且输出结果为a+b,如:add(2,3)和add(2)(3)均得到5。
1.实现add((2)(3)(4)(5)) = 2+3+4+5
function add(a) { function fun(b) { a += b; return fun; } fun.toString = function () { return a; } return fun; } console.log(add(1)(2)(3)(4)(6)); //10
2.实现add(2,3)=add((2)(3))=2+3
function add(x, y) { var sum = x; if (y) return sum + y; else { var temp = function (z) { sum = sum + z; return temp; } temp.toString = function () { return sum; }; return temp; } } console.log(add( 3, 6)); console.log(add(3)(6)(10));