2014-05-15 49 views
0

我看到開發商用不同的方式來聲明/ JS中定義函數,JavaScript中不同的方法聲明有什麼區別?

,如:

// 1 
createview:function() 
{ 

} 

// 2. 
var createview=function() 
{ 
} 

// 3. 
function createview() 
{ 
} 

雖然第二和第三分別是函數表達式和聲明,什麼是與第一個使用?

+0

第一種情況是當你想分配功能作爲對象的屬性 – StateLess

+0

來吧傢伙。這不重複。如果沒有其他對象符號,答案應該是Javascript中的'label'。 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/label –

+1

@HerringtonDarkholme這是不正確的。匿名函數不能用作語句(如果可以的話,它不會起作用)。很確定OP只是留下了相關的細節。 – JLRishe

回答

0

它是一個對象並用於顯示模塊模式中。

var module = (function() { 

    var stuff = function() { return 'stuff'; }; 

    return { 

    stuff: stuff 

    } 

}()); 

現在你有一個名字間隔關閉。

module.stuff() //--> returns 'stuff' 
相關問題