老师,这里的Object.creat和new有什么区别吗
自己写了一下感觉差不多,不知道用哪个更好一点
自己写了一下感觉差不多,不知道用哪个更好一点
2016-11-09
new Object()的__proto__(原型)指向Object.prototype。
Object.create(参数1,参数2)的__proto__(原型)是指向它自己的参数1。
var obj = new Object() 和 var obj = Object.create(Object.prototype),效果相差不大,obj都继承了Object.prototype中的toSting、toLocaleString这些方法。
个人觉得没有那个好那个不好,根据场景那个合理便于阅读就那个。
Student.prototype = Object.create(Person.prototype);
这里用Object.create(Person.prototype)明显要比new Object(Person.prototype)) 容易理解。
而且Object.create(参数1,参数2),还有参数2可以给对象添加新的属性。
举报