javascript中的閉包

2021-07-29 10:14:11 字數 1001 閱讀 7058

1.閉包的解釋

關於閉包具體的定義文獻中給的概念很抽象,我認為閉包是一種使函式能夠都去其它函式的區域性變數的語法機制。

舉個例子:

functionoutfunc()

returninfunc;

}

infunc();//控制台顯示"vicfeel"

這這個例子我們可以看出,在函式infunc中依然可以訪問outfunc的區域性變數name。

閉包應用舉例,模擬類的私有屬性,利用閉包的性質,區域性變數只有在sayage方法中才可以訪問,而name在外部也訪問,從而實現了類的私有屬性。

functionuser()

}

varuser =newuser();

console.log(user.name);//"vicfeel"

console.log(user.age);//"undefined"

user.sayage();//"my age is 23"

2.理解下面的兩個**段

var name = "the window";

var object = ;

}};console.log(object.getnamefunc()());//the window

var name2 = "the window";

var object2 = ;

}};console.log(object2.getnamefunc()());//my object

javaScript中的閉包

首先,我覺得,乙個概念,如果不理解也不影響使用的話,那麼,就沒必要去理解它 去學習它。閉包就是這樣乙個概念,你不理解它也能很好的用它。俺這兩年寫as3程式,是天天在和它打交道,甚至有過乙個function套乙個,乙個方法中套了20多個function的極端例子,但從未深究過它是怎麼實現的,它就像水和...

javascript中的閉包

閉包 乙個函式能夠讀取另外乙個函式裡面的變數。閉包的作用 1 讀取函式內部的變數 2 讓這個變數的值始終保持在記憶體中,不會在父函式呼叫後被自動清除。使用閉包注意事項 由於閉包會使得函式中的變數都被儲存在記憶體中,記憶體消耗很大,所以不能濫用閉包,否則會造成網頁的效能問題,在ie中可能導致記憶體洩漏...

javascript閉包中的this指向問題

關於this物件,它是基於當前執行環境所繫結的 var name the window var object console.log object.getname the window 每個函式在被呼叫時都會自動取得兩個特殊變數 this和arguments。內部函式在搜尋這兩個變數時,只會搜尋到其...