作家
登录

javascript题目,重写函数让其无限相加

作者: 来源:www.28hudong.com 2013-03-30 00:33:17 阅读 我要评论

function add(x) {________}; alert(add(2)(3)(4)); //填空,使结果为9 解法一, 复制代码 代码如下: //貘大 function add(x) { var c = 0; return function(x) { c = c + x ; arguments.callee.toString = function(){ return c; }; return arguments.callee; }(x); }; alert(add(2)(3)(4)); 解法二, 复制代码 代码如下: //三桂 function add(x) { return function(y){ return function(z){ return x+y+z; } } }; alert(add(2)(3)(4)); 解法三, 复制代码 代码如下: //司徒正美 function add (a){ if(!isFinite(add.i)){ add.i = a }else { add.i += a; } add.valueOf = add.toString = function(){ return add.i } return add; } alert(add(2)(3)(4)) 其实上题就是考curry,详见我另一篇博文。 如果你有不同的解法,也请多多指教!

  推荐阅读

  Firefox/Chrome/Safari的中可直接使用$/$$函数进行调试

接着在各个浏览器中测试,发现Firefox/Chrome/Safari中有,IE9/Opera没有。 $ 相当于 document.getElementById $$ 相当于 document.querySelectorAll 在chrome控制台敲$,$$一目了然 这两个函数都是浏览器调试工>>>详细阅读


本文标题:javascript题目,重写函数让其无限相加

地址:http://www.17bianji.com/kaifa2/JS/23624.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)