javascript自启动函数的问题
话不多说了。
先来看两段代码:
var elems = document.getElementsByTagName('a');for (var i = 0; i < elems.length; i++) {(function(index){ elems[i].addEventListener('click', function (e) {e.preventDefault();alert('I am link #' + index);}, 'false');})(i); //而这里的则不一样 //虽然循环结束后i 的值变成了8 //但是在封装在闭包内的index 确实一直被locked 住的 //一直保存在内存中。 //准确的说 应该是整个函数都lock在内存中.}这里可能需要一些javascript闭包的知识。
以上代码,想了很久,记录下来,以防止忘记。