前端面試:js閉包,為什么要使用閉包


要理解閉包,首先理解javascript特殊的變量作用域,變量的作用於無非就是兩種:全局變量,局部變量。

javascript語言的特殊處就是函數內部可以讀取全局變量。

1.如何從外部讀取局部變量?

我們有時候需要得到函數內的局部變量,但是在正常情況下,這是不能讀取到的,只有通過變通方法才能讀取到。

2.閉包的概念

各種專業文獻上的“閉包closure”定義非常抽象,很難看懂。可以這樣理解,閉包就是i能夠讀取其他函數內部變量的函數。

在javascript語言中,只有函數內部的子函數才能讀取局部變量,因此可以把閉包簡單理解成“定義在一個函數內部的函數”。所以本質上,閉包就是將函數內部和函數外部連接起來的一座橋梁。

3.閉包的用途

閉包可以讀取函數內部的變量,可以讓變量的值始終保持在內存中。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM