關(guān)于那個var obj=Object.create({x:1});
這個Object.create()是個什么意思啊?是不是從Object里有那么一個屬性是x:1,然后var obj 是聲明了obj得到了那個屬性。如果是這樣,那內(nèi)個obj.hasOwnProperty('x');應(yīng)該是個true吧?
這個Object.create()是個什么意思啊?是不是從Object里有那么一個屬性是x:1,然后var obj 是聲明了obj得到了那個屬性。如果是這樣,那內(nèi)個obj.hasOwnProperty('x');應(yīng)該是個true吧?
2015-11-18
舉報
2015-11-19
Object.create() ES5新增的。在創(chuàng)建對象的時候,我們有2種常用方法,一個是文本標記法(var obj = {}),一種是運用Object函數(shù)進行對象的創(chuàng)建(new Object()).但是這兩種方式并不是創(chuàng)建的一個完完全全"干干凈凈"的對象,這里的干凈只得是沒有繼承鏈.
語法:Object.create(proto, [ propertiesObject ]);
proto? 一個對象,作為新創(chuàng)建對象的原型。如果 proto 參數(shù)不是 null 或一個對象值,則拋出一個 TypeError 異常。null表示沒有原型對象(這樣就創(chuàng)建了一個"干凈的對象")
propertiesObject? 一個對象值,可以包含若干個屬性,屬性名為新建對象的屬性名,屬性值為那個屬性的屬性描述符對象.
2019-10-18
//?Object.create?可以理解為繼承一個對象,添加的屬性在原型下面;