js继承

继承的概述

构造函数:构造函数也是函数,构造函数也是类,首字母大写,new运算符进行调用,产生实例对象。通过实例对象访问对象下面具有的属性和方法。(构造函数内部的属性和方法都是私有的)

prototype:每一个函数都有一个原型prototype对象,原型对象里面放的是对象共有属性和方法

面向对象的两种写法

混合开发:构造函数+原型

ES6新增的class -- 上面语法的语法糖

继承

子类继承父类,但是不能影响父类。

proto__:每一个对象都有一个__proto__属性,原型链依靠这个属性连接起来

ES6 class继承方式

ES6继承两个核心的关键字:extends super

extends:

class可以通过extends关键字实现继承,这比es5的原型链的继承,要清晰和方便。

super:

子类必须在constructor方法中调用super()方法,否则新建实例就会报错。

子类自己的this对象,必须通过父类构建,也就是说如果不调用super方法,无法使用this。

super即可当函数使用,也可当对象使用。

原文地址:https://www.cnblogs.com/zlf1914/p/12818310.html