立即执行函数模式是一种语法,可以让你的函数在定义后立即被执行。
(function () {
console.log("app")
})()
(function (who) {
console.log("I miss you, " + who)
})("kangkang")
(function (global) {
console.log(global)
})(this)
通常,全局变量被作为一个参数传递给立即执行参数,这样它在函数内部不使用window也可以被访问到。
通常你不应该给立即执行函数传递太多的参数,因为它很快会成为一个负担——为了理解代码是如何工作的,你不得不经常上下滚动源代码。
就像其它任何函数一样,一个立即执行函数也能返回值并且可以赋值给其它变量。
var num = (function () {
return 4
})()
console.log(num)