1.Object.setPrototypeOf(),为现有对象设置原型,返回一个新对象
接收两个参数:第一个是现有对象,第二是原型对象
var arr=[5]
console.log(Object.setPrototypeOf(arr,Object.prototype)); //[5] 但[[Prototype]]: 是Object
Object.create() 方法用于创建一个新对象,使用现有的对象来作为新创建对象的原型prototype。
用法:Object.create(proto, [propertiesObject])
proto : 必须。表示新建对象的原型对象,即该参数会被赋值到目标对象的原型上。若该参数可以是null, 则对象没有prototype属性 (不可什么都不传,否则会抛出TypeError异常)。
propertiesObject : 可选。 用于对新创建的对象进行初始化,类似Object.defineProperty
方法
返回值:在指定原型对象上添加新属性后的对象。