最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

Object.create() 詳解

2022-09-29 22:20 作者:doubleyong  | 我要投稿

01 分 析


語(yǔ)法:

Object.create(proto[,propertiesObject])



參數(shù)


????????proto

????????創(chuàng)建對(duì)象的原型,表示要繼承的對(duì)象

????????

????????

????????propertiesObject(可選 )

????????也是一個(gè)對(duì)象,用于對(duì)新創(chuàng)建的對(duì)象進(jìn)行初始化

????????

?????????

????????

????????注:Object.create(null) 創(chuàng)建的對(duì)象是一個(gè)空對(duì)象,在該對(duì)象上沒(méi)有繼承 Object.prototype 原型鏈上的屬性或者方法



如圖:


我們來(lái)看看底層實(shí)現(xiàn)



F.prototype屬性,進(jìn)行了重新賦值,且指向傳遞的參數(shù)o;


?


02 應(yīng) 用



示例代碼:



能想到MyObj 的輸出結(jié)果是什么嘛?會(huì)有哪些屬性?(先思考一下 )


看看運(yùn)行結(jié)果,是否和你想的一樣呢??



你會(huì)發(fā)現(xiàn),第一個(gè)參數(shù),在返回對(duì)象的原型上,而不是直接屬性,可再回顧一下Object.create實(shí)現(xiàn)的底層原理;


第二參數(shù),則是對(duì)返回對(duì)象添加屬性,且進(jìn)行屬性描述對(duì)象的設(shè)置,關(guān)于屬性描述對(duì)象,請(qǐng)看下面介紹?




03 Object 對(duì)象 — 屬性描述對(duì)象


JavaScript 提供了一個(gè)內(nèi)部數(shù)據(jù)結(jié)構(gòu),用來(lái)描述對(duì)象的屬性,控制它的行為,比如該屬性是否可寫、可遍歷等等。這個(gè)內(nèi)部數(shù)據(jù)結(jié)構(gòu)稱為“屬性描述對(duì)象”(attributes object)。每個(gè)屬性都有自己對(duì)應(yīng)的屬性描述對(duì)象,保存該屬性的一些元信息。


下面是屬性描述對(duì)象的一個(gè)例子。



屬性描述對(duì)象提供6個(gè)元屬性。


(1)value


value是該屬性的屬性值,默認(rèn)為undefined。


(2)writable


writable是一個(gè)布爾值,表示屬性值(value)是否可改變(即是否可寫),默認(rèn)為true。


(3)enumerable


enumerable是一個(gè)布爾值,表示該屬性是否可遍歷,默認(rèn)為true。如果設(shè)為false,會(huì)使得某些操作(比如for...in循環(huán)、Object.keys())跳過(guò)該屬性。


(4)configurable


configurable是一個(gè)布爾值,表示可配置性,默認(rèn)為true。如果設(shè)為false,將阻止某些操作改寫該屬性,比如無(wú)法刪除該屬性,也不得改變?cè)搶傩缘膶傩悦枋鰧?duì)象(value屬性除外)。也就是說(shuō),configurable屬性控制了屬性描述對(duì)象的可寫性。


(5)get


get是一個(gè)函數(shù),表示該屬性的取值函數(shù)(getter),默認(rèn)為undefined。


(6)set


set是一個(gè)函數(shù),表示該屬性的存值函數(shù)(setter),默認(rèn)為undefined。


?


04 Object.create繼承的應(yīng)用



劃重點(diǎn):相對(duì)于構(gòu)造函數(shù)的繼承Object.create繼承實(shí)現(xiàn)了將A,B的原型完美分隔 。雙方不會(huì)互相影響。這是Object.create亮點(diǎn)所在


?


相關(guān)面試題:

對(duì)象字面量創(chuàng)建對(duì)象與 Object.create(null)創(chuàng)建對(duì)象有什么區(qū)別

答案:http://bugshouji.com/miansiti/t1406


更多內(nèi)容,請(qǐng)關(guān)注公主號(hào):bug收集? 作者:doubleyong

Object.create() 詳解的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
长寿区| 于都县| 克拉玛依市| 得荣县| 蒙自县| 灵寿县| 平利县| 宁明县| 建昌县| 克东县| 石嘴山市| 龙川县| 安义县| 富裕县| 文成县| 平山县| 米易县| 南澳县| 桐乡市| 吴旗县| 永仁县| 巫山县| 大邑县| 安庆市| 邵阳县| 荥阳市| 无为县| 北流市| 临沂市| 延寿县| 泸州市| 库伦旗| 福海县| 明水县| 新化县| 绥中县| 西峡县| 肃宁县| 都江堰市| 乌鲁木齐县| 翼城县|