IIFE 立即执行的函数 (Immediately Invoked Function Expression)
Node.js IIFE 立即执行的函数 (Immediately Invoked Function Expression)
什麽是 IIFE 立即执行的函数
IIFE 立即执行的函数 (Immediately Invoked Function Expression)
- 立即执行的函数,马上执行 function 的 expression ()
- 避免 local scope 的变数汙染到 global scope
- 避免 global scpoe 变数被汙染,影响 local scope 程式执行
var greeting = `Hello`;
(function(name) {
let greeting=`Hi`
// Hi KJ
console.log(`${greeting} ${name}`)
})(`KJ`);
(function($) {
// $ 在函数内指的就是 jQuery,变数不会被汙染
})(jQuery);
静态变数
用 IIFE 模拟出静态变数的结构
var Employee = (function() {
var sharedVariable = 0;
function Employee() {
++sharedVariable;
console.log("sharedVariable : " + sharedVariable);
}
return Employee;
})();
// 1
new Employee();
// 2
new Employee();
// 3
new Employee();
// 4
new Employee();