【题目】add(1)(2)(3)(4)
<h4>思考题解</h4>
<hr />
<p>问题:用 JS 实现一个无限累加的函数 add,示例如下:</p>
<pre><code>add(1); // 1
add(1)(2); // 3
add(1)(2)(3); // 6
add(1)(2)(3)(4); // 10
// 以此类推</code></pre>
<p>实现思路
1.返回一个函数
2.函数指行,返回主函数
3.取出来函数的参数</p>
<pre><code>function doAdd(n) {
var fn = function(m) {
return doAdd(n + m);
};
fn.toString = function() {
return '' + n;
}
return fn;
}
var a = doAdd(1)(2)(5)(8)(1);
console.log(a)
var b = doAdd(1);
console.log(b.toString()) //'1'
fn(a).toString() //函数的参数
</code></pre>