关于那个var obj=Object.create({x:1});
这个Object.create()是个什么意思啊?是不是从Object里有那么一个属性是x:1,然后var obj 是声明了obj得到了那个属性。如果是这样,那内个obj.hasOwnProperty('x');应该是个true吧?
这个Object.create()是个什么意思啊?是不是从Object里有那么一个属性是x:1,然后var obj 是声明了obj得到了那个属性。如果是这样,那内个obj.hasOwnProperty('x');应该是个true吧?
2015-11-18
Object.create() ES5新增的。在创建对象的时候,我们有2种常用方法,一个是文本标记法(var obj = {}),一种是运用Object函数进行对象的创建(new Object()).但是这两种方式并不是创建的一个完完全全"干干净净"的对象,这里的干净只得是没有继承链.
语法:Object.create(proto, [ propertiesObject ]);
proto 一个对象,作为新创建对象的原型。如果 proto 参数不是 null 或一个对象值,则抛出一个 TypeError 异常。null表示没有原型对象(这样就创建了一个"干净的对象")
propertiesObject 一个对象值,可以包含若干个属性,属性名为新建对象的属性名,属性值为那个属性的属性描述符对象.
举报