JS中閉包的經(jīng)典用法小結(jié)(2則示例)
本文實(shí)例總結(jié)了JS中閉包的經(jīng)典用法。分享給大家供大家參考,具體如下:
閉包這個(gè)東西,網(wǎng)上有很多介紹資料。個(gè)人看了很多,還是一知半解。這里不做理論介紹,直接給出2個(gè)例子。
代碼1:記錄函數(shù)被調(diào)用的次數(shù)
function a() { var i = 0; function b() { return ++i; } return b; } var c = a(); c();//1 c();//2
這種方式類似C語言中的private static變量,能夠保持局部變量的內(nèi)存不釋放。
代碼2:正確給DOM注冊事件處理函數(shù)
<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."); //} // 方式2:從0到3,是我們要的效果 (function(i){ buttons[i].onclick = function() { console.log(i + " was clicked."); } })(i); } </script> </body>
更多關(guān)于JavaScript相關(guān)內(nèi)容可查看本站專題:《javascript面向?qū)ο笕腴T教程》、《JavaScript中json操作技巧總結(jié)》、《JavaScript切換特效與技巧總結(jié)》、《JavaScript查找算法技巧總結(jié)》、《JavaScript錯(cuò)誤與調(diào)試技巧總結(jié)》、《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》、《JavaScript遍歷算法與技巧總結(jié)》及《JavaScript數(shù)學(xué)運(yùn)算用法總結(jié)》
希望本文所述對大家JavaScript程序設(shè)計(jì)有所幫助。
相關(guān)文章
vue(javaScript)操作字符串的一些常用方法總結(jié)
在平時(shí)前端開發(fā)中,我們不難發(fā)現(xiàn)經(jīng)常會(huì)用到字符串操作,這篇文章主要給大家介紹了關(guān)于vue(javaScript)操作字符串的一些常用方法的相關(guān)資料,需要的朋友可以參考下2024-01-01three.js中點(diǎn)對象(Point)和點(diǎn)材質(zhì)(PointsMaterial)的具體使用
本文主要介紹了three.js中點(diǎn)對象(Point)和點(diǎn)材質(zhì)(PointsMaterial)的具體使用,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-07-07JavaScript使用readAsDataURL讀取圖像文件
這篇文章主要為大家詳細(xì)介紹了JavaScript使用readAsDataURL讀取圖像文件的方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-05-05JavaScript數(shù)據(jù)類型區(qū)別及檢測方法
在JavaScript中,數(shù)據(jù)類型是編程中非常重要的概念,它決定了數(shù)據(jù)的性質(zhì)、如何存儲(chǔ)以及如何操作這些數(shù)據(jù),本文介紹JavaScript數(shù)據(jù)類型區(qū)別及檢測方法,感興趣的朋友一起看看吧2024-04-04document.all與getElementById、getElementsByName、getElementsByT
Document.all[]是文檔中所有標(biāo)簽組成的一個(gè)數(shù)組變量,包括了文檔對象中所有元素2008-12-12js實(shí)現(xiàn)同一頁面多個(gè)運(yùn)動(dòng)效果的方法
這篇文章主要介紹了js實(shí)現(xiàn)同一頁面多個(gè)運(yùn)動(dòng)效果的方法,涉及javascript操作頁面元素運(yùn)動(dòng)效果的技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2015-04-04js中對函數(shù)設(shè)置默認(rèn)參數(shù)值的3種方法
這篇文章主要介紹了js中對函數(shù)設(shè)置默認(rèn)參數(shù)值的3種方法嗎,3種方法都具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2015-10-10