一、1、我們探究這個(gè)問題的時(shí)候如果按照正常的思維順序,需要知道閉包是什么它是什么意思,但是這樣做會(huì)讓我們很困惑,了解這個(gè)問題我們需要知道它的來源,就是我們?yōu)槭裁匆褂瞄]包,先不管它是什么意思!
2、我們使用閉包是因?yàn)閖s的作用域問題,前面我們已經(jīng)對(duì)作用域了解了一些,在函數(shù)中,外部不能讀取到內(nèi)部的變量,而內(nèi)部可以讀取到外部的變量,這其實(shí)也是js特殊的一個(gè)地方?。ㄟ@個(gè)特殊其實(shí)是因?yàn)楹瘮?shù)的作用域是一條作用域鏈,而且作用域鏈?zhǔn)怯许樞虻?,我們稱之為鏈?zhǔn)阶饔糜蚪Y(jié)構(gòu)?。┠敲磫栴}來了,如果我們想要從函數(shù)外部讀取到局部的變量呢,那么閉包也就應(yīng)運(yùn)而生了!
3、我們來舉一個(gè)例子:

4、到這里我們就可以研究什么是閉包了,簡(jiǎn)單一句話:閉包就是能夠讀取其它函數(shù)內(nèi)部變量的函數(shù)!本質(zhì)上的閉包:就是函數(shù)外部和函數(shù)內(nèi)部連接的橋梁!
我們可以再深入一步的了解閉包,舉例:

二、我們可以再深入一步,舉例:
閉包中函數(shù)如果有參數(shù)怎么辦?它會(huì)怎么傳遞?
