立即执行函数是什么?

立即执行函数就是

  1. 声明一个匿名函数
  2. 马上调用这个匿名函数
1
2
3
4
5
6
(
function (){
console.log('我是匿名函数') //声明了一个匿名函数
}
) // 用括号包起来
() // 调用此函数

上面是一个典型的立即执行函数。

  • 首先声明一个匿名函数 function(){console.log(‘我是匿名函数’)}。
  • 然后在匿名函数后面接一对括号 (),调用这个匿名函数。

用括号把函数包起来其实是为了防止浏览器报错

如果我们直接写成

1
function(){console.log('我是匿名函数')}()

浏览器会报语法错误。如果想通过浏览器的语法检查,我们可以在函数前添加一些运算符:

1
2
3
4
5
6
!function(){console.log('我是匿名函数')}() // 求反,本身的值是undefined,求反之后浏览器反馈的就是true
~function(){console.log('我是匿名函数')}()
+function(){console.log('我是匿名函数')}()
-function(){console.log('我是匿名函数')}()
(function(){console.log('我是匿名函数')}()) // 用()把整个函数表达式包起来
(function(){console.log('我是匿名函数')})() // 用()把函数包起来

立即执行函数有什么用

只有一个作用:创建一个独立的作用域

这个作用域里面的变量,外面访问不到。


什么是匿名函数

匿名函数:(英语:anonymous function)是指一类无需定义标识符(函数名)的函数或子程序,普遍存在于多种编程语言中。
例:

1
2
3
alert((function(x){
return x*x;
})(10)); // 提示100

__END__

o0Chivas0o
文章作者:o0Chivas0o
文章出处立即执行函数
作者签名:Rich ? DoSomethingLike() : DoSomethingNeed()
版权声明:文章除特别声明外,均采用 BY-NC-SA 许可协议,转载请注明出处