天天看點

看了一篇閉包的,推薦一下~

https://cnodejs.org/topic/5d39c5259969a529571d73a8

閉包是可以通路另一個函數作用域的函數。由于 <code>javascript</code> 的特性,外層的函數無法通路内部函數的變量;而内部函數可以通路外部函數的變量(即作用域鍊)。

是以,使用閉包可以隐藏變量以及防止變量被篡改和作用域的污染,進而實作封裝。

而缺點就是由于保留了作用域鍊,會增加記憶體的開銷。是以需要注意記憶體的使用,并且防止記憶體洩露的問題。