2014-01-26 225 views
0

嗨,朋友我看到下面的代碼後有疑問。我知道下面的代碼是創建一個對象,並分配給應用程序變量。但是什麼是使用所有參數。任何人都可以幫助我理解,它做了什麼,有什麼好處。如果有任何有用的鏈接,請分享。javascript立即調用函數

var app = (function (app, $) { 

}(window.app = window.app || {}, jQuery))); 
+0

你想獲得模塊模式的理解,或者你有一些實際問題要清除? – Evgeniy

回答

1

它從你的全局範圍中取得window.app和jQuery,並將它們注入到你的函數中。這是一個更好的方法:

var app = function(app, $) 
{ 

} 

app(window.app = window.app || {},jQuery); 

這樣做的好處是您正在創建自己的範圍。您放入此函數的任何JavaScript都不在全局範圍內。這可以防止變量被覆蓋等。

+0

好的,有沒有關於此的任何文章或博客文章。我想完美地理解。 –

+0

我認爲這解釋了您要求更詳細的內容:http://www.adequatelygood.com/JavaScript-Module-Pattern-In-Depth.html – jd182

+0

謝謝。這是一個非常有用的職位。 –

相關問題