閉包
閉包就是一個(gè)函數(shù)引用另外一個(gè)函數(shù)的變量肖油,因?yàn)樽兞勘灰弥圆粫?huì)被回收觅捆,因此可以用來(lái)封裝一個(gè)私有變量
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Closures
垃圾回收
image.png
不再使用的變量也就是生命周期結(jié)束的變量粮坞,當(dāng)然只可能是局部變量鹰祸,全局變量的生命周期直至瀏覽器卸載頁(yè)面才會(huì)結(jié)束碉输。局部變量只在函數(shù)的執(zhí)行過(guò)程中存在巩割,而在這個(gè)過(guò)程中會(huì)為局部變量在椚雇纾或堆上分配相應(yīng)的空間,以存儲(chǔ)它們的值宣谈,然后在函數(shù)中使用這些變量愈犹,直至函數(shù)結(jié)束,而閉包中由于內(nèi)部函數(shù)的原因闻丑,外部函數(shù)并不能算是結(jié)束漩怎。
https://www.zhihu.com/question/54783872
http://www.jb51.net/article/75292.htm
https://www.cnblogs.com/hyddd/archive/2013/02/07/2908598.html
http://blog.csdn.net/yangzhihello/article/details/46842035
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Memory_Management