JavaScript中對(duì)象介紹
JavaScript中,除了number、string、boolean、null和undefined,其它所有的值都是對(duì)象。對(duì)象可以通過(guò)字面量來(lái)直接聲明,也可以通過(guò)new操作符來(lái)新建。與Java語(yǔ)言不同,JavaScript對(duì)象中的property是可以動(dòng)態(tài)添加或者刪除的;同時(shí),對(duì)象中的property還可以是空字符串:
//properties in object can be added/deleted dynamically
var o = {x:1, y:2};
console.log(o);//Object {x=1, y=2}
delete o.y;
o.z = 3;
console.log(o);//Object {x=1, z=3}
//empty string is allowed as object property
var o2 = {"":88, "p":99};
console.log(o2);//Object { =88, p=99}
//for constructor function, "new" operation returns an object.
function Computer(x, y) {
this.x = x;
this.y = y;
}
var c = new Computer(126, 163);
console.log(c);//Computer {x=126, y=163}
var c2 = new Computer(126);//missing parameter value will be "undefined"
console.log(c2);//Computer {x=126, y=undefined}
c.z = 66;
console.log(c);//Computer {x=126, y=163, z=66}
delete c.y;
console.log(c);//Computer {x=126, z=66}
如果在使用new操作符來(lái)新建對(duì)象時(shí),作用的function并不是一個(gè)類的constructor,而僅僅是一個(gè)普通的函數(shù),那么JavaScript將在執(zhí)行該函數(shù)后返回一個(gè)空對(duì)象:
//for pure function, "new" operation returns an empty object.
function compute(x){
console.log("execute function compute");
return x*2;
}
var a = new compute();
console.log(a);//compute {}
Object屬性
JavaScript中的Object有以下3個(gè)屬性:
1.prototype。引用,指向Object的原型對(duì)象。原型對(duì)象中的property可以被Object所繼承。
2.class。字符串,表示Object的類名。
3.extensible。boolean值,表示Object中是否允許動(dòng)態(tài)添加property。該屬性僅在ECMAScript 5中有效。
Property屬性
Object中的Property也有3個(gè)屬性:
1.writable。該property是否可寫(xiě)。
2.enumerable。當(dāng)使用for/in語(yǔ)句時(shí),該property是否會(huì)被枚舉。
3.configurable。該property的屬性是否可以修改,property是否可以刪除。
相關(guān)文章
javascript bom是什么及bom和dom的區(qū)別
BOM是瀏覽器對(duì)象模型,DOM是文檔對(duì)象模型,前者是對(duì)瀏覽器本身進(jìn)行操作,而后者是對(duì)瀏覽器(可看成容器)內(nèi)的內(nèi)容進(jìn)行操作。這篇文章給大家介紹javascript bom是什么及bom和dom的區(qū)別,感興趣的朋友一起學(xué)習(xí)吧2015-11-11
學(xué)習(xí)JavaScript設(shè)計(jì)模式(封裝)
這篇文章主要帶領(lǐng)大家學(xué)習(xí)JavaScript設(shè)計(jì)模式,其中重點(diǎn)介紹封裝,舉例說(shuō)明封裝的思想,對(duì)封裝進(jìn)行詳細(xì)剖析,感興趣的小伙伴們可以參考一下2015-11-11
Layui 帶多選框表格監(jiān)聽(tīng)事件以及按鈕自動(dòng)點(diǎn)擊寫(xiě)法實(shí)例
今天小編就為大家分享一篇Layui 帶多選框表格監(jiān)聽(tīng)事件以及按鈕自動(dòng)點(diǎn)擊寫(xiě)法實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-09-09
js實(shí)現(xiàn)的類似QQ的等級(jí)的代碼
類似QQ等級(jí)2008-09-09
JavaScript實(shí)現(xiàn)二級(jí)菜單的制作
這篇文章主要為大家詳細(xì)介紹了JavaScript實(shí)現(xiàn)二級(jí)菜單的制作,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-10-10
JavaScript詳解使用Promise處理回調(diào)地獄的兩種方法
這篇文章主要介紹了JavaScript詳解使用Promise處理回調(diào)地獄的兩種方法,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-11-11
javascript iframe中打開(kāi)文件,并檢測(cè)iframe存在否
從iframe中打開(kāi)文件,并檢測(cè)iframe存在否如果說(shuō)只是檢測(cè)頁(yè)面存在否,直接設(shè)置target用偽協(xié)議就可以解決了...2008-12-12

