當前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
理解javascript闭包
生活随笔
收集整理的這篇文章主要介紹了
理解javascript闭包
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
不說學術上怎么理解閉包的概念了,我所理解的閉包就是:
一個函數 a中包含另一個函數b,c調用函數a時,實際上就是調用了函數b,這就是閉包(嵌套在函數里面的內部函數,內部函數可以訪問外部函數中聲明的局部變量、參數和其他內部函數,內部函數被外部函數調用)。
看一個例子吧:
function a(){ //a中包含另一個函數b
var i=0;
function b(){
alert(++i)
};
return b
};
var c=a(); ?//c調用函數a時,實際上就是調用了函數b
alert(c); //返回的是function b(){alert(++i)}
閉包其實就是保護內部變量,
但是如果頁面上不需要這些變量,就會造成垃圾,
會使內存增大。
c=null ?這樣i就會被回收了。
閉包有啥好處呢?
1)可以存在自己的私有變量;
2)避免全局變量對其影響;
3)使一個變量長期儲存在內存中
轉載于:https://www.cnblogs.com/fs521cw/p/4914822.html
總結
以上是生活随笔為你收集整理的理解javascript闭包的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C++:友元(非成员友元函数、成员友元函
- 下一篇: 【UI】android如何绘制一个饼图