特權(quán)方法就是有權(quán)訪(fǎng)問(wèn)私有變量和私有函數(shù)的公有方法:
function MyObject(){ var privateVariable = 10; function privateFunction(){ return false; } this.publicMethod = function(){ privateVariable ++; return privateFunction(); }; } var x = new MyObject(); console.log(x.publicMethod()) ;//false
私有作用域中定義私有變量和函數(shù),同樣也可以創(chuàng)建特權(quán)方法,如:
(function(){ var privateValue = 10; function privateFunction(){ return false; } MyObject = function(){}; //沒(méi)有var 屬于全局變量,嚴(yán)格模式下會(huì)報(bào)錯(cuò) MyObject.prototype.publicMethod = function(){ privateValue ++; return privateFunction(); }; })(); var instance = new MyObject(); console.log(instance.publicMethod());
這里就可以看出實(shí)際上就是在私有作用域中定義了一個(gè)全局的構(gòu)建函數(shù);其中的一個(gè)方法就是返回私有作用域中的一個(gè)私有變量和屬性。寫(xiě)成下面這樣就可以更好地了解:
Obj = function(){}; (function(){ var x = 10; function y(){ return x + 10; } Obj.prototype.say = function(){ console.log(y()); }; })() var ins = new Obj(); ins.say();
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/78208.html
摘要:創(chuàng)建對(duì)象中,創(chuàng)建對(duì)象的基本模式有三種。因此,在設(shè)計(jì)構(gòu)造函數(shù)時(shí),需要進(jìn)行慎重考慮。因此在中,這種問(wèn)題被稱(chēng)作繼承破壞封裝。靜態(tài)成員每個(gè)只有一份,直接通過(guò)類(lèi)對(duì)象進(jìn)行訪(fǎng)問(wèn)。 什么是封裝 找工作時(shí)一些公司給了offer后我就想知道真正拿到手的是多少,畢竟賦稅繁重。但各種稅也好,五險(xiǎn)一金也好我實(shí)在是弄不清楚,于是我就會(huì)在網(wǎng)上的一些稅后收入計(jì)算器上進(jìn)行計(jì)算,只需要填寫(xiě)一些基本信息,比如稅前收入,所...
摘要:模仿塊級(jí)作用域在塊級(jí)語(yǔ)句中定義的變量,實(shí)際上是包含函數(shù)中而非語(yǔ)句中創(chuàng)建的。避免對(duì)全局作用域產(chǎn)生不良影響這種方式可以通過(guò)創(chuàng)建私有作用域,避免對(duì)全局作用域產(chǎn)生不良影響。一般包括函數(shù)的參數(shù)局部變量和內(nèi)部定義的其他函數(shù)。 模仿塊級(jí)作用域 在塊級(jí)語(yǔ)句中定義的變量,實(shí)際上是包含函數(shù)中而非語(yǔ)句中創(chuàng)建的。如: function outputNumbers(x){ for (var i = 0;...
摘要:遞歸閉包模仿塊級(jí)作用域私有變量小結(jié)在編程中,使用函數(shù)表達(dá)式可以無(wú)需對(duì)函數(shù)命名,從而實(shí)現(xiàn)動(dòng)態(tài)編程。匿名函數(shù)也稱(chēng)為拉姆達(dá)函數(shù)。函數(shù)聲明要求有名字,但函數(shù)表達(dá)式不需要。中的函數(shù)表達(dá)式和閉包都是極其有用的特性,利用它們可以實(shí)現(xiàn)很多功能。 1、遞歸 2、閉包 3、模仿塊級(jí)作用域 4、私有變量 5、小結(jié) 在JavaScript編程中,使用函數(shù)表達(dá)式可以無(wú)需對(duì)函數(shù)命名,從而實(shí)現(xiàn)動(dòng)態(tài)編程。匿名函數(shù)也稱(chēng)...
摘要:閉包閉包的特點(diǎn)就是內(nèi)部匿名函數(shù)可以訪(fǎng)問(wèn)外部函數(shù)作用域的變量和方法變量對(duì)象。閉包的主要表現(xiàn)形式就是匿名函數(shù),但是兩者并不是等價(jià)的。中是沒(méi)有塊級(jí)作用域的,為了在中引入塊級(jí)作用域,可以使用匿名函數(shù)模擬塊級(jí)作用域。 在介紹閉包之前,首先解釋在隨后的測(cè)試實(shí)例中會(huì)使用的assert測(cè)試函數(shù),這個(gè)方法有別于alert()測(cè)試,有很大的改進(jìn)。 assert()測(cè)試方法 #...
摘要:閉包閉包的特點(diǎn)就是內(nèi)部匿名函數(shù)可以訪(fǎng)問(wèn)外部函數(shù)作用域的變量和方法變量對(duì)象。閉包的主要表現(xiàn)形式就是匿名函數(shù),但是兩者并不是等價(jià)的。中是沒(méi)有塊級(jí)作用域的,為了在中引入塊級(jí)作用域,可以使用匿名函數(shù)模擬塊級(jí)作用域。 在介紹閉包之前,首先解釋在隨后的測(cè)試實(shí)例中會(huì)使用的assert測(cè)試函數(shù),這個(gè)方法有別于alert()測(cè)試,有很大的改進(jìn)。 assert()測(cè)試方法 #...
閱讀 2219·2021-11-22 13:54
閱讀 3382·2019-08-29 12:25
閱讀 3445·2019-08-28 18:29
閱讀 3591·2019-08-26 13:40
閱讀 3280·2019-08-26 13:32
閱讀 966·2019-08-26 11:44
閱讀 2236·2019-08-23 17:04
閱讀 2978·2019-08-23 17:02