Javascript 類與靜態(tài)類的實(shí)現(xiàn)(續(xù))
更新時(shí)間:2010年04月02日 21:23:39 作者:
由于MM的事件已干完,接著我們的靜態(tài)類的實(shí)現(xiàn)。這東西在Javascript里用得會非常的頻繁,因?yàn)獒槍ΜF(xiàn)在的網(wǎng)頁,多個(gè)基于同一個(gè)類對象的頁面不多,往往不同塊對象的交互就可以解決問題了,這就需要在JS針對元素定義幾個(gè)靜態(tài)類就可以完事了,進(jìn)入正題。
這次我們直接看例子:
/***定義靜態(tài)類***/
var StaticClass = (function(){
var Return = {
Property: "Test Static Property", //公有屬性
Method: function(){ //公有方法
alert(_Field); //調(diào)用私用字段
privateMethod(); //調(diào)用私用方法
}
}; //定義返回的公有對象
var _Field = "Test Static Field"; //私有字段
var privateMethod = function(){ //私有方法
alert(Return.Property); //調(diào)用屬性
}
return Return; //生成公有靜態(tài)元素
})();
這次,我用的是閉包的方式去實(shí)現(xiàn),其中最重要的一點(diǎn)是reutrn Return; 這里會引伸到值類型與引用類型的概念。在js里,Object就是一個(gè)引用類型,在閉包里,我會拋出一個(gè)包含有屬性與方法的Object的引用,這樣,也可以說是把這個(gè)Object拋向了外部,實(shí)現(xiàn)了公開。StaticClass這個(gè)變量接住了Return引用。 對于閉包內(nèi)部的私有字段與方法都是沒有被拋出的,這樣就可以形成一個(gè)私有的環(huán)境。
很多時(shí)候我們都會用這種技巧去對JS進(jìn)行分塊,讓程序不會那么的混亂。
上面的例子沒這么干過的兄弟們也可以自己去試試。忘了,剛剛那個(gè)例子大家可以這么樣去試試。
StaticClass.Method();
StaticClass.Property = "Test2";
StaticClass.Method();
一個(gè)人能夠走多遠(yuǎn),取決于與誰同行
復(fù)制代碼 代碼如下:
/***定義靜態(tài)類***/
var StaticClass = (function(){
var Return = {
Property: "Test Static Property", //公有屬性
Method: function(){ //公有方法
alert(_Field); //調(diào)用私用字段
privateMethod(); //調(diào)用私用方法
}
}; //定義返回的公有對象
var _Field = "Test Static Field"; //私有字段
var privateMethod = function(){ //私有方法
alert(Return.Property); //調(diào)用屬性
}
return Return; //生成公有靜態(tài)元素
})();
這次,我用的是閉包的方式去實(shí)現(xiàn),其中最重要的一點(diǎn)是reutrn Return; 這里會引伸到值類型與引用類型的概念。在js里,Object就是一個(gè)引用類型,在閉包里,我會拋出一個(gè)包含有屬性與方法的Object的引用,這樣,也可以說是把這個(gè)Object拋向了外部,實(shí)現(xiàn)了公開。StaticClass這個(gè)變量接住了Return引用。 對于閉包內(nèi)部的私有字段與方法都是沒有被拋出的,這樣就可以形成一個(gè)私有的環(huán)境。
很多時(shí)候我們都會用這種技巧去對JS進(jìn)行分塊,讓程序不會那么的混亂。
上面的例子沒這么干過的兄弟們也可以自己去試試。忘了,剛剛那個(gè)例子大家可以這么樣去試試。
復(fù)制代碼 代碼如下:
StaticClass.Method();
StaticClass.Property = "Test2";
StaticClass.Method();
一個(gè)人能夠走多遠(yuǎn),取決于與誰同行
相關(guān)文章
js面向?qū)ο?多種創(chuàng)建對象方法小結(jié)
js面向?qū)ο?多種創(chuàng)建對象方法小結(jié),需要的朋友可以參考下2012-05-05
面向?qū)ο蟮腏avascript之一(初識Javascript)
Javascript是一門極富表現(xiàn)力的語言,在當(dāng)今大行其道的Web浪潮中扮演著非常關(guān)鍵的作用。合理、高效地利用這門技術(shù),可以讓我們的Web世界多姿多彩。首先,我們認(rèn)識一下這門技術(shù)的幾個(gè)獨(dú)特的特性2012-01-01
JavaScript 使用簡略語法創(chuàng)建對象的代碼
JavaScript 使用簡略語法創(chuàng)建對象的代碼 ,需要的朋友可以參考下。2010-01-01
javascript 面向?qū)ο蟮腏avaScript類
這一節(jié)來說下緊接著的一個(gè)概念——類。雖然JavaScript中沒有class關(guān)鍵字,但作為開發(fā)人員我們一定要有這個(gè)思想。在C#中類可以分為實(shí)例類和靜態(tài)類,JavaScript亦然。2010-05-05

