js闭包学习

参考资料:

阮一峰:http://www.ruanyifeng.com/blog/2009/08/learning_javascript_closures.html

这篇文章并没有很好的解释内存无法释放的原因,下篇文章开头就说的比较清楚了。

博客园zhangle:http://www.cnblogs.com/zhangle/archive/2010/07/02/1770206.html

蓝色理想--js闭包的代价:http://bbs.blueidea.com/thread-2862562-1-1.html

其他没啥。哈哈。

【实例】:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>事件顺序</title>
</head>

<body>
<a href="#">第一个链接</a> <a href="#">第二个链接</a> <a href="#">第三个链接</a> <a href="#">第四个链接</a>
<ul>
<li><a href="#">第五个链接</a></li>
<li><a href="#">第六个链接</a></li>
</ul>
<script type="text/javascript">
var bindLink=function(){
var ele=document.getElementsByTagName('a'),eleLength=ele.length;
for(var i=0;i<eleLength;i++){
(function(i){
console.log(i);
ele[i].onclick=function(e){
console.log('当前点击的链接元素是:'+'第'+(i+1)+'个');
}
})(i);
}
}
bindLink();
</script>
</body>
</html>



你可能感兴趣的:(js闭包)