概念:
????? 閉包就是能夠讀取其它函數內部變量的函數
條件:
???????? 1、在函數中要嵌套另外一個函數
???????? 2、被嵌套的函數一定眼訪問外部函數的局部變量
???????? 3、被嵌套的函數要被返回
作用:
???????? 1、讓局部變量持久化(長期駐扎在內存中)
???????? 2、保證數據安全
閉包實現累加:
?????????????????? function?? init(){
????????????????????????????? var? age? =?? 10? ;
???????????????????????????????????????? function?? showAge(){
??????????????????????????????????????????????????? alert(age++)
???????????????????????????????????????? }
???????????????????????????????????????? return???? showAge;
???????????????????? }
閉包注意問題:
??????? 由于閉包會使得函數中的變量都被保存在內存中,內存消耗很大,所以不能濫用閉包,??? 否則會造成網頁的性能問題,在IE中可能導致內存泄漏