javascript題目,重寫函數(shù)讓其無(wú)限相加
更新時(shí)間:2012年02月15日 13:37:35 作者:
群里有個(gè)出了一道有趣的題目,分享出來(lái)讓大家看看
function add(x) {________}; alert(add(2)(3)(4)); //填空,使結(jié)果為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))
其實(shí)上題就是考curry,詳見(jiàn)我另一篇博文。
如果你有不同的解法,也請(qǐng)多多指教!
解法一,
復(fù)制代碼 代碼如下:
//貘大
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));
解法二,
復(fù)制代碼 代碼如下:
//三桂
function add(x) {
return function(y){
return function(z){
return x+y+z;
}
}
};
alert(add(2)(3)(4));
解法三,
復(fù)制代碼 代碼如下:
//司徒正美
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))
其實(shí)上題就是考curry,詳見(jiàn)我另一篇博文。
如果你有不同的解法,也請(qǐng)多多指教!
相關(guān)文章
TypeScript 獲取函數(shù)的參數(shù)類型、返回值類型及定義返回函數(shù)類型
這篇文章主要介紹了TypeScript 獲取函數(shù)的參數(shù)類型、返回值類型及定義返回函數(shù)類型,需要的朋友可以參考下2024-02-02javascript面向?qū)ο髣?chuàng)建對(duì)象的方式小結(jié)
這篇文章主要介紹了javascript面向?qū)ο髣?chuàng)建對(duì)象的方式,結(jié)合實(shí)例形式總結(jié)分析了javascript常見(jiàn)的7種創(chuàng)建對(duì)象的方式,需要的朋友可以參考下2019-07-07js實(shí)現(xiàn)內(nèi)置計(jì)時(shí)器
這篇文章主要為大家詳細(xì)介紹了js實(shí)現(xiàn)內(nèi)置計(jì)時(shí)器,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-12-12laravel實(shí)現(xiàn)中文和英語(yǔ)互相切換的例子
今天小編就為大家分享一篇laravel實(shí)現(xiàn)中文和英語(yǔ)互相切換的例子,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-09-09一個(gè)JavaScript獲取元素當(dāng)前高度的實(shí)例
這篇文章主要為大家介紹了一個(gè)JavaScript獲取元素當(dāng)前高度的實(shí)例,比較實(shí)用,建議新手朋友們可以看看2014-10-10JavaScript Window窗口對(duì)象屬性和使用方法
這篇文章主要介紹了JavaScript Window窗口對(duì)象屬性和使用方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-01-01