Object.create函数
Posted haonanya
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Object.create函数相关的知识,希望对你有一定的参考价值。
语法
Object.create(prototype, descriptors)
参数
prototype
必需。 要用作原型的对象。 可以为 null。
descriptors
可选。 包含一个或多个属性描述符的 javascript 对象。
“数据属性”是可获取且可设置值的属性。 数据属性描述符包含 value 特性,以及 writable、enumerable 和 configurable 特性。 如果未指定最后三个特性,则它们默认为 false。 只要检索或设置该值,“访问器属性”就会调用用户提供的函数。 访问器属性描述符包含 set 特性和/或 get 特性。 有关详细信息,请参阅 Object.defineProperty 函数 (JavaScript)。
返回值
一个具有指定的内部原型且包含指定的属性(如果有)的新对象。
如果满足下列任一条件,则将引发 TypeError 异常:
prototype 参数不是对象且不为 null。 descriptors 参数中的描述符具有 value 或 writable 特性,并具有 get 或 set 特性。 descriptors 参数中的描述符具有不为函数的 get 或 set 特性。
示例
var newObj = Object.create(null, { size: { value: "large", enumerable: true }, shape: { value: "round", enumerable: true } }); console.log(newObj.size + "<br/>");//large console.log(newObj.shape + "<br/>");//round console.log(Object.getPrototypeOf(newObj));null
以上是关于Object.create函数的主要内容,如果未能解决你的问题,请参考以下文章
Object.create 将prototype.constructor 更改为父构造函数,但在子实例化时,子构造函数运行
#yyds干货盘点# 前端歌谣的刷题之路-第一百六十八题-object.create
instanceof,Object.getPrototypeOf(),Object.create(),Object.setPrototypeOf(),Object.prototype.isProtot