0
1
2
3
4
5
6
[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]上段代码本意是在每个div上都加一个事件,即每当点击div时,就显示此div的相应序号。但是运行程序时我们会发现,不论点击那个,只会显示7,这是什么愿因呢。–这就是闭包的问题 原来 在js中,函数中在定义函数,就出现闭包了。此时外层函数中变量是可以在里层函数里利用的,即使外层函数结束。但是当外层中出现循环的时候,如果在里层函数中利用这个循环变量的话,会直接引用这个变量的最终值。 就像上述代码演示的一样。 如何解决呢。 可以利用匿名函数来加以解决。匿名函数会制动执行,我们可以利用这一特性,来产生一个作用