JS中闭包的经典用法小结(2则示例)
编程学习 2021-07-04 19:20www.dzhlxh.cn编程入门
这篇文章主要介绍了JS中闭包的经典用法,结合2则示例分析了JS闭包的相关使用技巧,具有一定参考借鉴价值,需要的朋友可以参考下
本文实例总结了JS中闭包的经典用法。分享给大家供大家参考,具体如下:
闭包这个东西,网上有很多介绍资料。个人看了很多,还是一知半解。这里不做理论介绍,直接给出2个例子。
代码1:记录函数被调用的次数
function a() { var i = 0; function b() { return ++i; } return b; } var c = a(); c();//1 c();//2
这种方式类似C语言中的private static变量,能够保持局部变量的内存不释放。
代码2:正确给DOM注册事件处理函数
<body> <input type="button" id="b1" value="1"> <input type="button" id="b2" value="2"> <input type="button" id="b3" value="3"> <input type="button" id="b4" value="4"> <script type="text/javascript"> var buttons = document.getElementsByTagName("input"); for (var i = 0; i < buttons.length; i++) { // 方式1:i的值一直是3 //buttons[i].onclick = function() { // console.log(i + " was clicked."); /