我们知道,在一般情况下,函数必须先调用才能执行,如下所示,我们定义了一个函数,并且调用,
function fn(){
    console.log(1);
    }
    fn();
打印结果为:

        如果不调用的话,我们打印的结果永远不会显示。
        所以这里就会提到我们的立即执行函数,所谓立即执行函数,就是不需要调用,立马就能执行的函数。
立即执行函数有两种最常见的写法:
(function(){})()(function(){}())
举个例子:
 (function fn(){
            console.log(2);
        })()
打印结果为:

打印成功。
 
立即执行函数中的第二个小括号就相当于调用函数,我们同样可以给立即执行函数传参数,,将我们要传递的参数写在第二个()里面,作为实参,
如下:
 (function fn(a,b){
    console.log('a+b='+a+b);
 })(1,2)
打印结果为:

        第二种立即执行函数使用方法和第一种基本相似,不在赘述。
        需要注意的是:如果有多个立即执行函数,他们之间需要逗号分隔,否则会报错。同时,在立即执行函数里面,也可以采用匿名函数的形式书写。
那么立即执行函数有什么作用或者好处呢?
        它最大的作用就是独立创建了一个作用域。我们知道,javascript 中没有私有作用域的概念,如果在多人开发的项目上,在全局或局部作用域中声明了一些变量,可能会被其他人不小心用同名的变量给覆盖掉,而立即执行函数里面的变量都是局部变量,不会有命名冲突的情况。
	声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
		
评论(0)