| 1 |

new Object()


var person = new Object();
person.name = ‘Jimmy’
person.age = 23
console.log(person.age)
console.log(person) | | —- | —- | | 2 |

new 构造函数的形式()

function Person(name,age){
this.name = name
this.age = age
}
People.prototype.sayName = function(){
console.log(‘my name is ‘+this.name)
}
var p1 = new Person(‘Jimmy’,23)
console.log(p1.name)
console.log(p1.sayName) | | 3 |

Object.create(properties)

创建一个新的对象,使用现有的对象来提供新对象的proto
属性可以直接访问原型下面,可直接.出来,但其实是通过proto获取的

var person = { name:’Jimmy’, age:23 }
var p1 = Object.create(person)
console.log(p1)
console.log(p1.proto)
console.log(p1.name)

使用一个新对象的值覆盖旧对象(没有列出的不覆盖):
Objecta.assign(旧对象,新对象) |