JavaScript中的Object對(duì)象

JavaScript中的Object對(duì)象橡淑,是JS中所有對(duì)象的基類咆爽,也就是說JS中的所有對(duì)象都是由Object對(duì)象衍生的。Object對(duì)象主要用于將任意數(shù)據(jù)封裝成對(duì)象形式斗埂。

所有主流瀏覽器均支持Object對(duì)象。更多細(xì)節(jié)信息請(qǐng)參考JavaScript Object對(duì)象的屬性和方法呛凶。

語法

Object對(duì)象(或稱之為Object()函數(shù)),其語法有以下兩種:

用法一:充當(dāng)Object對(duì)象的構(gòu)造函數(shù)使用模闲,用于結(jié)合new關(guān)鍵字構(gòu)造一個(gè)新的Object對(duì)象。Object()會(huì)根據(jù)傳入?yún)?shù)的類型返回一個(gè)對(duì)應(yīng)類型的對(duì)象尸折。

newObject([value])

用法二:當(dāng)作普通函數(shù)使用,其行為與用法一(使用new關(guān)鍵字)完全一致实夹,相當(dāng)于用法一省略了new關(guān)鍵字。

Object([value])

參數(shù)

參數(shù)描述

value可選/任意類型需要包裝為對(duì)象的值贮配。

Object()將會(huì)根據(jù)參數(shù)value的數(shù)據(jù)類型,返回對(duì)應(yīng)類型的對(duì)象:

如果value為基元數(shù)據(jù)類型Boolean泪勒、Number宴猾、String圆存,則返回對(duì)應(yīng)類型的對(duì)象仇哆,例如:Boolean對(duì)象、Number對(duì)象讹剔、String對(duì)象。

如果value本身為對(duì)象陌兑,則不對(duì)其作任何更改由捎,返回其本身兔综。

如果省略了value參數(shù)狞玛,或value為null、undefined心肪,則返回自身無任何屬性的Object對(duì)象。

返回值

Object()的返回值為Object類型贰镣。返回一個(gè)與給定值對(duì)應(yīng)類型的對(duì)象呜象。該對(duì)象包裝了給定的參數(shù)碑隆。

示例&說明

Object()返回一個(gè)與指定參數(shù)對(duì)應(yīng)類型的對(duì)象蹬音。

1、如果參數(shù)為基元數(shù)據(jù)著淆,則返回對(duì)應(yīng)類型的對(duì)象。例如:參數(shù)為原始字符串值(typeof該參數(shù)返回"string")永部,則返回對(duì)應(yīng)的String對(duì)象。

2懦砂、如果參數(shù)自身就是對(duì)象(typeof該參數(shù)返回"object"或"function"),則不對(duì)其作任何更改荞膘,返回其本身玉工。

3、如果未指定參數(shù)遵班,或參數(shù)為null或undefined,則返回一個(gè)空對(duì)象狭郑。

varstr="CodePlayer";

document.writeln(typeofstr);// string

varobj=newObject(str);// 包裝為String對(duì)象,實(shí)際上相當(dāng)于 var obj = new String(str);

document.writeln(typeofobj);// object

document.writeln(obj.constructor===String);// true

document.writeln(obj instanceofString);// true

document.writeln(obj instanceofObject);// true

varstrObj=newString("CodePlayer");

document.writeln(typeofstrObj);// object

varobj2=newObject(strObj);// strObj本身就是對(duì)象微服,直接返回該對(duì)象

document.writeln(obj2===strObj);// true

運(yùn)行代碼(其他代碼請(qǐng)自行復(fù)制到演示頁面運(yùn)行)

請(qǐng)?jiān)賲⒖枷旅嬉欢问纠a:

// 基元數(shù)據(jù)類型 => 對(duì)應(yīng)類型的對(duì)象

varstrObj=newObject("CodePlayer");// 返回一個(gè)String對(duì)象缨历,相當(dāng)于new String("CodePlayer");

varnumObj=newObject(18);// 返回一個(gè)Number對(duì)象以蕴,相當(dāng)于new Number(18);

varboolObj=newObject(true);// 返回一個(gè)Boolean對(duì)象,相當(dāng)于new Boolean(true);

document.writeln(strObj instanceofString);// true

document.writeln(numObj instanceofNumber);// true

document.writeln(boolObj instanceofBoolean);// true

// 對(duì)象 => 對(duì)象本身

vararr=[2,3,5];

varregex=/^\d$/;

functiontest(){

alert("Hello World!");

}

vararrObj=newObject(arr);

varregObj=newObject(regex);

varfunObj=newObject(test);

document.writeln(arrObj===arr);// true

document.writeln(regObj===regex);// true

// 雖然typeof funObj返回的是"function"辛孵,但它本身就是一個(gè)Function對(duì)象

document.writeln(funObj===test);// true

// null => 空對(duì)象

varobj=newObject(null);

document.writeln(obj instanceofObject);// true

在JS中丛肮,你還可以為創(chuàng)建的對(duì)象任意添加、修改或移除某些屬性和方法(有些內(nèi)置屬性和方法可能無法被修改或移除)魄缚。

varobj=newObject();

obj.name="CodePlayer";

obj.age=18;

obj.sayHi=function(){

alert("Hello World!");

};

document.writeln(obj.age);// 18

// 移除age屬性

deleteobj.age;

document.writeln(obj.age);// undefined

在JS中對(duì)象的屬性可以通過兩種方式訪問:object.property和object["property"]宝与。

varobj=newObject();

obj.name="CodePlayer";

obj.age=18;

obj.sayHi=function(){

alert("Hello World!");

};

// 包含特殊字符的屬性只能以此方式訪問

obj["foo-bar"]="包含特殊字符";

document.writeln(obj.age);// 18

document.writeln(obj['age']);// 18

document.writeln(obj["foo-bar"]);// 包含特殊字符

JS還支持以字面值形式創(chuàng)建一個(gè)自定義對(duì)象:{ property1:value1, property2:value2, propertyN:valueN }焚廊。

// 將上述自定義對(duì)象obj以字面值形式聲明

varo={

// 所有的屬性名稱都可以加上引號(hào)

name:"CodePlayer",

age:18,

sayHi:function(){

alert("Hello World!");

},

"foo-bar":"包含特殊字符"

};

document.writeln(o.age);// 18

document.writeln(o['age']);// 18

document.writeln(o["foo-bar"]);// 包含特殊字符

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市习劫,隨后出現(xiàn)的幾起案子咆瘟,更是在濱河造成了極大的恐慌,老刑警劉巖诽里,帶你破解...
    沈念sama閱讀 211,884評(píng)論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件袒餐,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡谤狡,警方通過查閱死者的電腦和手機(jī)灸眼,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,347評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來焰宣,“玉大人,你說我怎么就攤上這事捕仔∝盎” “怎么了?”我有些...
    開封第一講書人閱讀 157,435評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵逻澳,是天一觀的道長(zhǎng)闸天。 經(jīng)常有香客問我,道長(zhǎng)斜做,這世上最難降的妖魔是什么苞氮? 我笑而不...
    開封第一講書人閱讀 56,509評(píng)論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮瓤逼,結(jié)果婚禮上笼吟,老公的妹妹穿的比我還像新娘。我一直安慰自己霸旗,他們只是感情好贷帮,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,611評(píng)論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著诱告,像睡著了一般撵枢。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上精居,一...
    開封第一講書人閱讀 49,837評(píng)論 1 290
  • 那天锄禽,我揣著相機(jī)與錄音,去河邊找鬼靴姿。 笑死沃但,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的佛吓。 我是一名探鬼主播宵晚,決...
    沈念sama閱讀 38,987評(píng)論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼垂攘,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了淤刃?” 一聲冷哼從身側(cè)響起晒他,我...
    開封第一講書人閱讀 37,730評(píng)論 0 267
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎钝凶,沒想到半個(gè)月后仪芒,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體唁影,經(jīng)...
    沈念sama閱讀 44,194評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡耕陷,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,525評(píng)論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了据沈。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片哟沫。...
    茶點(diǎn)故事閱讀 38,664評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖锌介,靈堂內(nèi)的尸體忽然破棺而出嗜诀,到底是詐尸還是另有隱情,我是刑警寧澤孔祸,帶...
    沈念sama閱讀 34,334評(píng)論 4 330
  • 正文 年R本政府宣布隆敢,位于F島的核電站,受9級(jí)特大地震影響崔慧,放射性物質(zhì)發(fā)生泄漏拂蝎。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,944評(píng)論 3 313
  • 文/蒙蒙 一惶室、第九天 我趴在偏房一處隱蔽的房頂上張望温自。 院中可真熱鬧,春花似錦皇钞、人聲如沸悼泌。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,764評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽馆里。三九已至,卻和暖如春可柿,著一層夾襖步出監(jiān)牢的瞬間鸠踪,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,997評(píng)論 1 266
  • 我被黑心中介騙來泰國(guó)打工趾痘, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留慢哈,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,389評(píng)論 2 360
  • 正文 我出身青樓永票,卻偏偏與公主長(zhǎng)得像卵贱,于是被迫代替她去往敵國(guó)和親滥沫。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,554評(píng)論 2 349

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理键俱,服務(wù)發(fā)現(xiàn)兰绣,斷路器,智...
    卡卡羅2017閱讀 134,633評(píng)論 18 139
  • 國(guó)家電網(wǎng)公司企業(yè)標(biāo)準(zhǔn)(Q/GDW)- 面向?qū)ο蟮挠秒娦畔?shù)據(jù)交換協(xié)議 - 報(bào)批稿:20170802 前言: 排版 ...
    庭說閱讀 10,930評(píng)論 6 13
  • 不走心的努力,僅僅只是作秀踪央。 1:有個(gè)學(xué)攝影的朋友臀玄,辭職了,朋友那天跟我電話畅蹂,略帶沙啞的聲音尋求我?guī)椭臅r(shí)候健无。我已...
    書上熊閱讀 171評(píng)論 0 0
  • 1.沒有好好考證的原因是累贤,我不知道以后會(huì)從事什么工作,但是當(dāng)時(shí)學(xué)習(xí)這門課程難住了我少漆,讓我覺得我不喜歡這個(gè)行業(yè)臼膏,所以...
    洛尓閱讀 130評(píng)論 0 0
  • 壹 若干年后。 “聽說楚兄閉門苦讀三月示损,想必今年定能奪得頭籌啊渗磅。” 楚既明聞言輕笑:“柳兄過獎(jiǎng)了屎媳,試已考完夺溢,多說無...
    絹踏閱讀 174評(píng)論 0 2