请教关于function和变量的问题for(i=0; i<5; i++){aLi[i].onclick=function(){alert(i);}}小白请教下,为什么alert()出来的i是5而不是和点击的aLi[i]里的i值一样??求原理解释。[解决办法]这个基本是每个闭包教程都会举的例子,你查一下吧。[解决办法]程序就一个i,循环完之后就是5了,所以alert(i)就是5,onclick只是触发这个alert,又不修改i[解决办法]学习一下闭包