JavaScript中的Primitive對象封裝介紹
JavaScript中,string、number、boolean均為primitive基本類型,也即字符串、數(shù)值、布爾值并不是以對象的形式而存在的。不過,由于需要對這三種primitive類型值進行操作,因此JavaScript會自動封裝這三種類型的值,使其作為對象而擁有屬性與方法。以string為例,這種封裝過程如下:
1.當JavaScript遇到對string值進行屬性訪問或者方法調(diào)用時,會調(diào)用new String(字符串值)自動將該string封裝成一個String對象。
2.JavaScript會訪問這個新創(chuàng)建的對象的屬性或者方法,并返回相應(yīng)的結(jié)果。
3.屬性訪問或者方法調(diào)用結(jié)束后,JavaScript將立即銷毀這個新創(chuàng)建的對象。
以下面的代碼為例,對JavaScript自動創(chuàng)建的String對象進行屬性寫入操作沒有任何意義,因為這個創(chuàng)建出來的對象在寫入語句結(jié)束后就不復存在了:
var s = "test";
s.length = 9;
console.log(s.length);//still 4
s.newVariable = 9;
console.log(s.newVariable);//undefined
console.log(s === "test");//true
值得注意的是,上述代碼中的s變量所表示的永遠是primitive的字符串,JavaScript所自動創(chuàng)建的字符串對象存在于執(zhí)行s.length或者s.newVariable操作的過程中。這可以從以上實驗的最后一行代碼中得到驗證。
除了對Primitive值進行自動封裝,開發(fā)人員也可以選擇手動進行相應(yīng)的過程。與自動封裝不同的是,手動封裝所得到的對象并不會被立即銷毀,因此針對手動封裝的對象所采取的屬性寫入操作是有意義的:
var t = new String("test");
t.length = 9;
console.log(t.length);//still 4, as length attribute is read only
t.newVariable = 9;
console.log(t.newVariable);//9
console.log(t == "test");//true
console.log(t === "test");//false
- javascript 面向?qū)ο笕吕砭氈當?shù)據(jù)的封裝
- Javascript 面向?qū)ο螅ǘ┓庋b代碼
- Javascript 面向?qū)ο缶幊蹋ㄒ唬?封裝
- javascript對XMLHttpRequest異步請求的面向?qū)ο蠓庋b
- javascript面向?qū)ο蟀b類Class封裝類庫剖析
- javascript 面向?qū)ο缶幊袒A(chǔ):封裝
- JavaScript之信息的封裝 js對象入門
- js實現(xiàn)對ajax請求面向?qū)ο蟮姆庋b
- javascript 面向?qū)ο蠓庋b與繼承
- 學習Javascript面向?qū)ο缶幊讨庋b
- Javascript之面向?qū)ο?-封裝
- JavaScript對象封裝的簡單實現(xiàn)方法(3種方法)
相關(guān)文章
javascript和jquery中cookie的設(shè)置方法
Cookie 是瀏覽器訪問服務(wù)器后,服務(wù)器傳給瀏覽器的一段數(shù)據(jù)。瀏覽器需要保存這段數(shù)據(jù),不會輕易刪除(保存在計算機中)。此后每次瀏覽器訪問該服務(wù)器,都必須帶上這段數(shù)據(jù)。這篇文章主要介紹了javascript和jquery中cookie的設(shè)置方法2023-07-07
在JavaScript中使用for循環(huán)的方法詳解
在本文中,我們將學習 JavaScript 中提供,的 for 循環(huán),我們將了解如何在 JavaScript 中使用 for...in 循環(huán)語句、其語法、工作原理示例、何時使用或避免使用它以及我們可以使用哪些其他類型的循環(huán),需要的朋友可以參考下2023-07-07
js+html5實現(xiàn)canvas繪制圓形圖案的方法
這篇文章主要介紹了js+html5實現(xiàn)canvas繪制圓形圖案的方法,涉及html5圖形繪制的基礎(chǔ)技巧,需要的朋友可以參考下2015-06-06
原生js實現(xiàn)改變隨意改變div屬性style的名稱和值的結(jié)果
在本文將為大家介紹下如何用原生js和jQuery實現(xiàn)隨意改變div屬性,和重置,具體實現(xiàn)如下,感興趣的朋友可以參考下,希望對大家有所幫助2013-09-09
JavaScript 中的12種循環(huán)遍歷方法【總結(jié)】
本文給大家總結(jié)了12種JavaScript 中的1循環(huán)遍歷方法,每種方法通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下2018-05-05

