當前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
经典面试题(13):如何理解和应用JavaScript闭包?
生活随笔
收集整理的這篇文章主要介紹了
经典面试题(13):如何理解和应用JavaScript闭包?
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
關于閉包概念很多人覺得很抽象,你可以理解閉包是一種使函數能夠都去其它函數的局部變量的語法機制。
舉個例子:
function outFunc(){
? ?var name = "前端君";
? ?function inFunc(){
? ? ? ?console.log(name);
? ?}
? ?return inFunc;
}
inFunc(); //控制臺顯示"前端君"
這這個例子我們可以看出,在函數?inFunc?中依然可以訪問?otuFunc?的局部變量?name?。
閉包應用舉例:模擬類的私有屬性。看下面的例子。
function User(){? ?this.name = "前端君"; ?//公有屬性
? ?var age = 23; ? ?//私有屬性
? ?this.sayAge = function(){
? ? ? ?console.log("my age is " + age);
? ?}
}
var user = new User();
console.log(user.name);
//"前端君"
// 私有屬性不可直接訪問
console.log(user.age);
//"undefined"
//但可以通過sayAge訪問
user.sayAge();
//"my age is 23"
利用閉包的性質,局部變量只有在?sayAge?方法中才可以訪問,而?name?在外部也訪問,從而實現了類的私有屬性。
這就是閉包在實際開發的其中一個很常見應用。
熱門文章
原創教程原創教程:
附加習題:
職場焦慮:
感到迷茫:
培訓出身:
培訓費用:
搞笑黑話:
職業自由:
職場形象:
合作推廣分割線
總結
以上是生活随笔為你收集整理的经典面试题(13):如何理解和应用JavaScript闭包?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 谈慎独2017-12-19
- 下一篇: 3月份最热门 JS开源项目排行