IIFE 萌新学习笔记

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

 

IIFE:Immediately-Invoked Function Expression(立即执行函数表达式

 一  常用写法:

//经常使用的写法
(function(){
//匿名函数 console.log(123) }())


//这样子也可以
(function(){ //匿名函数 console.log(123) })()


//也可以使用对象表达,但是这种情况下 最下面的()不能为空
var fn = (function(){
 console.log(123);
}())

1  定义完成直接执行。

2  后面的小括号表示先执行哪一条。

3  执行顺序是先执行最后面的(),也就是自右边开始执行    例如:

(function(i){  // i = (3)
       console.log(i)
}(3))

二  与闭包关系:

 


for(var i = 0 ; i< 6; i++){
(function (j) {  // j = i
setTimeout(function () {
console.log(j)
},1000);
}(i))
}

console.log(i)

//输出结果
6,0,1,2,3,4,5

 

posted @ 2018-12-13 16:57  一枚找不到名的程序猿  阅读(166)  评论(0编辑  收藏  举报