JavaScript:立即执行函数

Posted QXXXD

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaScript:立即执行函数相关的知识,希望对你有一定的参考价值。

前言:

什么是立即执行函数?JS立即执行函数模式是一种语法,可以让你的函数在定义后立即被执行,这种模式本质上就是函数表达式(命名的或者匿名的),在创建后立即执行。

立即执行函数的两种常见写法

  • 匿名函数包裹在一个括号运算符中,后面跟一个小括号
(function(){
    //...
})()
  • 匿名函数后面跟一个小括号,整个包裹在一个括号运算符中
(function(){
    //...
}())

(),!,+,-,=等运算符都能起到立即执行的作用,这些运算符的作用就是将匿名函数或函数声明转换为函数表达式。

注意:

  • 函数体后面要有小括号()
  • 函数体必须是函数表达式而不能是函数声明

例:

(function (test) {    //使用()运算符,输出123
    console.log(test);
})(123);

(function (test) {    //使用()运算符,输出123
    console.log(test);
}(123));

!function (test) {    //使用!运算符,输出123
    console.log(test);
}(123);
var fn = function (test) {  //使用=运算符,输出123
    console.log(test);
}(123);

好处

  • 不必为函数命名,避免了污染全局变量
  • 立即执行函数内部形成了一个单独的作用域,可以封装一些外部无法读取的私有变量
  • 封装变量

总之:立即执行函数会形成一个单独的作用域,可以封装一些临时变量或者局部变量,避免污染全局变量。

以上是关于JavaScript:立即执行函数的主要内容,如果未能解决你的问题,请参考以下文章

javascript立即执行函数表达式(IIFE)

javascript中的立即执行函数(function(){…})()

javaScript立即执行函数

js 立即执行函数

深入理解javascript中的立即执行函数(function(){…})()

JavaScript初阶--------函数闭包立即执行函数