閉包算是js里面比較不容易理解的點(diǎn),尤其是對(duì)于沒(méi)有編程基礎(chǔ)的人來(lái)說(shuō)。
其實(shí)閉包要注意的就那么幾條,如果你都明白了那么征服它并不是什么難事兒。下面就讓我們來(lái)談一談閉包的一些基本原理。
閉包的概念
一個(gè)閉包就是一個(gè)函數(shù)和被創(chuàng)建的函數(shù)中的作用域?qū)ο蟮慕M合。(作用域?qū)ο笙旅鏁?huì)說(shuō))
通俗一點(diǎn)的就是 “ 只要一個(gè)函數(shù)中嵌套了一個(gè)或多個(gè)函數(shù),那么我們就可以稱它們構(gòu)成了閉包。 ”
類似這樣:
1 function A() { 2 var i = 5; 3 return function() { 4 console.log('i = '+i); 5 } 6 }