คำตอบเดียวคือการเชื่อมไฟล์ JavaScript หลาย ๆ ไฟล์อย่างปลอดภัย การใช้เครื่องหมายอัฒภาคไม่ได้ทำให้เกิดปัญหา
สมมติว่าคุณมีฟังก์ชั่นหลายอย่าง:
IIFE 1
(function(){
// The rest of the code
})(); // Note it is an IIFE
IIFE 2
(function(){
// The rest of the code
})(); // Note it is also an IIFE
ในการต่อข้อมูลอาจดูเหมือน:
(function(){})()(function(){})()
แต่ถ้าคุณเพิ่มเครื่องหมายอัฒภาคก่อนฟังก์ชันจะมีลักษณะดังนี้:
;(function(){})();(function(){})()
ดังนั้นโดยการเพิ่ม;
มันจะดูแลถ้าการแสดงออกใด ๆ ไม่ได้ถูกยกเลิกอย่างถูกต้อง
ตัวอย่างที่ 2
สมมติว่าคุณมีไฟล์ JavaScript ที่มีตัวแปร:
var someVar = "myVar"
ไฟล์ JavaScript อื่นที่มีฟังก์ชั่นบางอย่าง:
(function(){})()
ตอนนี้มันจะมีลักษณะต่อกัน
var someVar = "myVar"(function(){})() // It may give rise to an error
ด้วยเซมิโคลอนมันจะมีลักษณะดังนี้:
var someVar = "myVar";(function(){})()