在模塊化JavaScript代碼時(shí),可以使用立即執(zhí)行函數(shù)表達(dá)式(IIFE)來(lái)創(chuàng)建私有作用域,從而保護(hù)變量和函數(shù)不被外部訪問(wèn)。這有助于避免全局污染和命名沖突。以下是如何在模塊化中使用IIFE的示例:
myModule.js
:// 使用IIFE創(chuàng)建私有作用域
(function () {
// 私有變量
var privateVar = 'I am private';
// 私有函數(shù)
function privateFunction() {
console.log('This is a private function');
}
// 公開(kāi)暴露的對(duì)象
var myModule = {
publicFunction: function () {
console.log('Accessing private variable: ' + privateVar);
privateFunction();
},
};
// 導(dǎo)出模塊
return myModule;
})();
// 導(dǎo)入并使用myModule
myModule.publicFunction(); // 輸出: Accessing private variable: I am private 和 This is a private function
在這個(gè)例子中,我們使用IIFE創(chuàng)建了一個(gè)私有作用域,其中包含私有變量privateVar
和私有函數(shù)privateFunction
。然后,我們創(chuàng)建了一個(gè)名為myModule
的對(duì)象,該對(duì)象包含一個(gè)公共方法publicFunction
,用于訪問(wèn)和調(diào)用私有成員。最后,我們將myModule
對(duì)象導(dǎo)出,以便在其他文件中使用。