內(nèi)部函數(shù)訪問了外部函數(shù)的變量并返回出去,會(huì)形成閉包滑绒。
閉包的作用
- 1.實(shí)現(xiàn)公有變量;
- 2.可以做緩存隘膘;
- 3.可以實(shí)現(xiàn)繼承疑故,設(shè)置私有化屬性;
- 4.模塊化開發(fā)弯菊,防止全局變量污染纵势。
閉包的缺點(diǎn)及解決
缺點(diǎn):函數(shù)執(zhí)行完后, 函數(shù)內(nèi)的局部變量沒有釋放,占用內(nèi)存時(shí)間會(huì)變長,容易造成內(nèi)存泄露钦铁。
解決:能不用閉包就不用软舌,及時(shí)釋放。比如:
f = null; // 讓內(nèi)部函數(shù)成為垃圾對(duì)象 -->回收閉包