天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

Javascript 作用域使用說明

公用、受保護和私有作用域

在傳統的面向對象程序設計中,主要關注于公用和私有作用域。公用作用域中的對象屬性可以從對象外部訪問,即開發者創建對象的實例后,就可使用它的公用屬性。而私有作用域中的屬性只能在對象內部訪問,即對于外部世界來說,這些屬性并不存在。這也意味著如果類定義了私有屬性和方法,則它的子類也不能訪問這些屬性和方法。

最近,另一種作用域流行起來,即受保護作用域。雖然在不同語言中,受保護作用域的應用的規則不同,但一般說來,它都用于定義私有的屬性和方法,只是這些屬性和方法還能被其子類訪問。

對ECMAScript討論這些作用域幾乎毫無意義,因為ECMAScript中只存在一種作用域――公用作用域。ECMAScript中的所有對象的所有屬性和方法都是公用的。因此,定義自己的類和對象時,必須格外小心。記住,所有屬性和方法默認都是公用的。

許多開發者都在網上提出了有效的屬性作用域模式,解決了ECMAScript的這種問題。由于缺少私有作用域,開發者們制定了一個規約,說明哪些屬性和方法應該被看作私有的。這種規約規定在屬性名前后加下劃線。例如:

這段代碼中,屬性color是私有的。記住,這些下劃線并不改變這些屬性是公用屬性的事實,它只是告訴其他開發者,應該把該屬性看作私有的。

有些開發者還喜歡用單下劃線說明私有成員,例如obj._color。

靜態作用域并非靜態的

靜態作用域定義的屬性和方法任何時候都能從同一個位置訪問。在Java中,類可具有靜態屬性和方法,無需實例化該類的對象,即可訪問這些屬性和方法,例如Java.NET.URLEncoder類,它的函數encode()即是靜態方法。

嚴格說來,ECMAScript并沒有靜態作用域。不過,它可以給構造函數提供屬性和方法。還記得嗎,構造函數只是函數。函數是對象,對象可以有屬性和方法。例如:

這里,方法alternate()實際上是函數sayHi的方法。可以像調用常規函數一樣調用sayHi()輸出"hi",也可以調用sayHi.alternate()輸出"hola"。即使如此,alternate()也是sayHi()公用作用域中的方法,而不是靜態方法。

JavaScript技術Javascript 作用域使用說明,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 精品国产麻豆免费人成网站 | 亚洲乱码爆乳精品成人毛片 | 极品虎白在线观看 | 韩国羞羞秘密教学子开车漫书 | 内射后入在线观看一区 | 国产99久久亚洲综合精品西瓜tv | 亚洲欧美中文字幕高清在线 | 正能量不良WWW免费窗口 | 亚洲视频欧美视频 | 国产精品色吧国产精品 | 中文字幕专区高清在线观看 | 日韩 国产 欧美视频二区 | 欧美一区二区高清 | 亚洲国产中文字幕新在线 | 亚洲一区二区影院 | 在线播放国产视频 | 亚洲欧美无码2017在线 | 好大好硬好湿再深一点网站 | 欧美506070 | 97久久精品人人槡人妻人 | 午夜片神马影院福利 | 亚洲色大成网站WWW永久麻豆 | 亚洲无人区码二码三码区别图 | 亚洲高清在线精品一区 | a圾片目录大全 | 内射白嫩少妇超碰 | 亚洲精品视频免费 | 被黑人掹躁10次高潮 | 97在线视频免费观看97 | 精品含羞草免费视频观看 | 成人毛片免费观看视频大全 | 宫交拔不出来了h黑人 | 亚洲国产成人精品青青草原100 | 97国内精品久久久久久久影视 | 日本bbwhd| 永久免费观看视频 | 99午夜高清在线视频在观看 | 一个人在线观看的视频 | 亚洲欧美综合在线中文 | 亚洲区欧美日韩综合 | 黄色三级网址 |