这篇文章将为大家详细讲解有关js之闭包的用法分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。直接上代码<!DOCTYPE html> <ht
这篇文章将为大家详细讲解有关js之闭包的用法分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
直接上代码
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<title>Document</title>
</head>
<style type="text/CSS">
*{
list-style:none;
}
ul{
display:flex;
flex-wrap:wrap;
}
li{
width: 20%;
text-align: center;
}
img{
width: 90%;
padding:5%;
border:1px solid #ccc;
border-radius:5px;
}
</style>
<body>
<ul>
<li><img src="/file/imgs/upload/202210/19/k4o5t1i50lw.jpg" alt=""><p><button>赞(1)</button></p></li>
<li><img src="/file/imgs/upload/202210/19/k4o5t1i50lw.jpg" alt=""><p><button>赞(1)</button></p></li>
<li><img src="/file/imgs/upload/202210/19/k4o5t1i50lw.jpg" alt=""><p><button>赞(1)</button></p></li>
<li><img src="/file/imgs/upload/202210/19/k4o5t1i50lw.jpg" alt=""><p><button>赞(1)</button></p></li>
</ul>
</body>
<script type="text/javascript">
function my$(tagName){
return document.getElementsByTagName(tagName);
}
var btnObjs=my$("button");
function bb(){
var value=2;
return function(){
var target=event.target
console.log(this)
this.innerHTML="赞("+(value++)+")";
}
}
for(var i=0;i<btnObjs.length;i++){
btnObjs[i].onclick=bb()
}
</script>
</html>
函数被返回后 其中的value 并未被释放,所以累加
闭包后,作用域链会被延长
闭包的作用,缓存数据,是缺点也是优点
关于“JS之闭包的用法分析”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
--结束END--
本文标题: JS之闭包的用法分析
本文链接: https://www.lsjlt.com/news/78609.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
下载Word文档到电脑,方便收藏和打印~
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0