-
js中创建个对象中new之后发生了什么?
相关链接new过程
1:创建个新对象(var Obj={})2:将构造函数的作用域赋给新对象(也就是this指向,obj.proto=Person.prototype),3:执行构造函数的代码,给新对象添加新属性(Person.call(obj)),4:返回新对象。 -
object.create()的理解
object.create(prototype,descriptor),第一个参数为目标对象,第二个参数则是为新对象额外添加的属性,所有属性都会覆盖原型对象上同名属性
var obj={
name:"xiaoming",
arr:[1,2,56]
}
var person1=Object.create(obj,{
name:{
value:"li"
},
arr:[11,16]
})
var person2=Object.create(obj)
person1.arr.push("55)
console.log(person1.name)//li
console.log(person2.name)//xiaoming
console.log(person1.arr)//[11,16,55]
console.log(person2.arr)//[1,2,56]
- Object构造函数上的方法