为了账号安全,请及时绑定邮箱和手机立即绑定

老师,这里的Object.creat和new有什么区别吗

自己写了一下感觉差不多,不知道用哪个更好一点

正在回答

4 回答

用 new object();好点!因为ie9以下的也可以兼容! object.create()是ES5才有的继承父类的原型!不支持id9以下的版本

1 回复 有任何疑惑可以回复我~

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可以给对象添加新的属性。

0 回复 有任何疑惑可以回复我~

应该是object.create()吧--

0 回复 有任何疑惑可以回复我~

object.creat()是ES5才有的继承父类的原型,new object()是构造函数创建object对象。

1 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

老师,这里的Object.creat和new有什么区别吗

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信