JavaScript中构造函数、原型对象、对象原型的关系以及原型链(超详细)

JavaScript中的构造函数、原型对象和对象原型共同构成了其独特的继承模式。在实现继承时,需要注意当原型对象被赋值后,constructor属性可能不再指向正确的构造函数,需要手动修复。此外,Object是最顶级的类,其原型指向null。所有对象都有__proto__属性,用于原型链的链接。
摘要由CSDN通过智能技术生成

JavaScript中构造函数、原型对象、对象原型共同构成了JavaScript中的继承

 

下面我们用代码进行演示

下面是JavaScript中实现继承的方法(需要注意的是当我们把一个包含函数的对象赋值给一个构造函数的原型对象时,此时构造函数的原型对象中的constructor已经不是指向了构造函数,这是因为对象属于复杂数据类型,它是有指针的,所以此时为了恢复指针的指向,我们此时需要把原型对象中的constructor重新指向构造函数,例如下图中的woman.prototype.constructor=woman)

 

 

需要注意的是,Object是JavaScript中最顶级的类,它的指向为null(原型对象也属于对象,也有其对应的__proto__)

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值