森欄
2019-11-25 15:47:19
在JavaScript中使用自動調用功能之前使用分號有什么好處。我在一些流行的jQuery插件中看到了這種方法,我很想知道這是否是我不知道的JavaScript中的下一件令人敬畏的事情。預先感謝,伙計們!
3 回答

素胚勾勒不出你
TA貢獻1827條經驗 獲得超9個贊
如果將具有自調用功能的兩個文件連接在一起,如下所示:
檔案A:
(function(){...A...})()
檔案B:
(function(){...B...})()
文件A + B:
(function(){...A...})()(function(){...B...})()
您有兩個不帶分隔符的語句。當您將文件分類在一起然后將它們最小化時,會發生這種情況。
現在,文件B的作者將分號放在前面:
文件B2:
;(function(){...B2...})()
您將獲得一個有效的腳本:
(function(){...A...})();(function(){...B2...})()

UYOU
TA貢獻1878條經驗 獲得超4個贊
自調用函數用括號括起來,在JavaScript中括號被重載以表示
對表達式進行分組以覆蓋優先級: (x + y) * z
功能應用: f()
當括號與函數應用程序混淆時,在函數前加上分號可防止函數成為其前一個參數的參數。
考慮
var x = 42
(function () { ... })()
是相同的
var x = 42(function () { ... })()
但
var x = 42
;
(function () { ... })()
是相同的
var x = 42;
(function () { ... })()
添加回答
舉報
0/150
提交
取消