老师,IIFE第二个作用还是不理解
使用IIFE前,我理解的是,只是执行了push这个函数,里面的匿名函数并没有执行,数组中全是alert(i);这个源代码,所以才会alert(i),i为全局变量,最终i=5; 所以弹出的都是5
使用IIFE之后,执行的是第一个匿名函数,里面同样push了一个function,也就是把alert(i)放入数组中,push()函数中的匿名函数仍然没有执行,arr中仍然保存了五个函数?全部push完之后,i是全局变量,最终值仍然是5,最后获取的也是全局变量,那么也应该都是5?
是我哪里理解的不对吗
34
收起
正在回答
1回答
同学你好,使用了IIFE之后,for循环每执行一次,里面的函数也会执行一次,即将数push到数组中一次,因此for循环结束后,数组中会存有5个函数。
祝学习愉快!
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星