對(duì)于前端人員面試,出現(xiàn)頻率最多也是讓人最頭疼的就是面試官說(shuō):“請(qǐng)簡(jiǎn)單談一談你對(duì)閉包的理解”。對(duì)于這一個(gè)幾乎快被人問(wèn)爛的問(wèn)題,屢屢出現(xiàn)在我們面試或被面試的過(guò)程中的原因很簡(jiǎn)單--我們一直都在接觸閉包,卻很少去正確地對(duì)待它。

因?yàn)殚]包是因?yàn)镴S的一些語(yǔ)言特性而形成的,所以在談它之前我們首先要了解一下的知識(shí)點(diǎn)

1.執(zhí)行上下文
2.作用域
3.垃圾回收機(jī)制
4.函數(shù)嵌套

本文只會(huì)簡(jiǎn)單的談涉及到的內(nèi)容,如果知識(shí)點(diǎn)有遺漏的同學(xué)可以自行g(shù)oogle,接下來(lái)讓我們進(jìn)入正題!

1. 什么是閉包?

關(guān)于什么是閉包讓我們先看看《高級(jí)程序設(shè)計(jì)》和《JavaScript權(quán)威指南》中的說(shuō)法:

《高程》: 閉包是指有權(quán)訪問(wèn)另一個(gè)函數(shù)作用域中的變量的函數(shù),創(chuàng)建閉包的常見(jiàn)方式,就是在一個(gè)函數(shù)內(nèi)部創(chuàng)建另一個(gè)函數(shù)。

延伸閱讀

學(xué)習(xí)是年輕人改變自己的最好方式-Java培訓(xùn),做最負(fù)責(zé)任的教育,學(xué)習(xí)改變命運(yùn),軟件學(xué)習(xí),再就業(yè),大學(xué)生如何就業(yè),幫大學(xué)生找到好工作,lphotoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動(dòng)軟件開(kāi)發(fā)培訓(xùn),網(wǎng)站設(shè)計(jì)培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)學(xué)習(xí)是年輕人改變自己的最好方式