2
我學習的Javascript模塊模式模塊模式,以及所遇到的這兩種方式來創建一個模塊:語法在Javascript
var Module = (function() {
// code
})();
var Module = (function() {
// code
}());
有在這兩種方法一個顯著差異?如果沒有,這被認爲是更好的做法?謝謝。
我學習的Javascript模塊模式模塊模式,以及所遇到的這兩種方式來創建一個模塊:語法在Javascript
var Module = (function() {
// code
})();
var Module = (function() {
// code
}());
有在這兩種方法一個顯著差異?如果沒有,這被認爲是更好的做法?謝謝。
兩者都是一樣的。外圍圓括號強制內部代碼作爲表達式進行評估。這意味着在這兩種情況下,功能代碼都被視爲功能表達式。然後由於()括號,這個函數立即執行。
所以,從JS解釋器待辦事項列表的角度來看應該是完全一樣的:1)獲取函數表達式,2)立即執行它。
它只是有別於美學的觀點 - 它對你而言更爲自然看起來。
謝謝你的回答。這有助於。 – akshayKhot
不,沒有。這是重複的,我會找到更早的版本。 –
在這種情況下,沒有區別。 至於模塊,你可以閱讀關於commonjs和amd。正如我建議查看打字稿的示例,將生成的代碼可用於形成模塊結構的想法 – Pyfhon
謝謝@TJJCrowder找到正確的答案。這回答了我的問題。 – akshayKhot