首页IT科技js中object.create(JavaScript:{}、new Object和Object.create的区别)

js中object.create(JavaScript:{}、new Object和Object.create的区别)

时间2025-08-03 02:41:18分类IT科技浏览4396
导读:一、主要区别...

一              、主要区别

1                     、{} 和 new Object() 除了本身创建的对象              ,都继承了 Object 原型链上(Object.prototype)的属性或者方法                     ,eg:toString();当创建的对象相同时       ,可以说 {} 等价于 new Object()               。

2       、Object.create() 是将创建的对象继承到原型链上              ,而本身没有继承 Object.prototype 的属性和方法                     。

二       、Object.create的用法

1.Object.create也可以创建一个空对象                     ,但是他的原型如果不指定则没有

2.Object.create如果值是某个对象那么他的原型就是这个对象

let obj1 = { a:10, b:20, sum(){ return this.a + this.b } } let obj5 = Object.create(obj1)

3.这时候obj5不等于obj1,而obj5的原型等于obj1       ,如果obj1新增属性       ,同步obj5的原型也可以获得

最后总结:Object.cerate() 必须接收一个对象参数                     ,创建的新对象的原型指向接收的参数对象              ,

new Object() 创建的新对象的原型指向的是 Object.prototype. (表述有点啰嗦       ,简洁点说就是前者继承指定对象                     , 后者继承内置对象Object)

可以通过Object.create(null) 创建一个干净的对象              ,也就是没有原型,

而 new Object() 创建的对象是 Object的实例                     ,原型永远指向Object.prototype.

声明:本站所有文章                     ,如无特殊说明或标注,均为本站原创发布       。任何个人或组织              ,在未征得本站同意时                     ,禁止复制                     、盗用              、采集       、发布本站内容到任何网站                     、书籍等各类媒体平台       。如若本站内容侵犯了原著者的合法权益       ,可联系我们进行处理                     。

创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!

展开全文READ MORE
win7电脑时间无法更改(在Win7系统中,电脑时间改不了怎么办?) 洛杉矶机场三字代码(HostHatch VPS洛杉矶机房综合评测(洛杉矶qn机房))