父类的原型对象和父类的区别?

来源:4-3 简单的多态

rayyli

2020-09-18 14:46:18

父类的原型对象的方法和属性是指父类constructor内写的方法和属性;

父类的方法是指父类在constructor外定义的方法吗?

写回答

2回答

好帮手慕久久

2020-09-18

同学你好,问题解答如下:

1. 父类的原型对象,是指父类的属性prototype,二者不是一个东西,原型对象prototype上可以保存父类的一些方法(es6中,父类的属性不放在原型对象上)。

2. 父类的原型对象的方法,是在constructor外面定义的,如下:

http://img.mukewang.com/climg/5f64882b09eeb94608100504.jpg

3. 同学所说的“父类的方法”具体是指什么?如果是指“父类自身的方法”,则是直接在类身上定义的方法,例如下面的eat方法:

http://img.mukewang.com/climg/5f6488360987428807570177.jpg

如果是指“父类原型上的方法”,则是在constructor外面定义的(第一张图);如果是指“父类构造函数上的方法”,则是指在constructor里面定义的,如下:

http://img.mukewang.com/climg/5f64884109cb181905750395.jpg

如果我的回答帮到了你,欢迎采纳,祝学习愉快!

1
hayyli
h 老师说的很明明白白,很感动>_<!,不过还有个问题:ES6类的构造函数constructor和ES5的构造函数(用new调用的)里的prototype属性里的constructor有什么区别?
h020-09-18
共1条回复

好帮手慕久久

2020-09-19

同学你好,es6的构造函数constructor相当于es5的构造函数本身,它俩的作用都是给实例添加属性,与es5的构造函数的原型对象prototype上的constructor不是一个东西。

祝学习愉快!

1

0 学习 · 10739 问题

查看课程