2012-02-24 89 views
0

比方說,有兩種方法來定義一個函數:該函數返回功能

第一種方式:

Bar.prototype.foo = function() 
{ 
    // do something 
} 

方式二:

Bar.prototype.foo = function() 
{ 
    return function() { 
     // do something 
    } 
} 

可以肯定的第二種方法是有用關閉的情況。

還有其他的情況,第二種方式比第一種方式更可取?

回答

1

我有一個項目,我在那裏爲某些輸入類型動態地構建驗證器函數,類似於結束案例。

因此,基於輸入參數返回不同的函數可能是後面定義函數的有效用例。