前言
类与实例:
类的声明
生成实例
类与继承:
如何实现继承:继承的本质就是原型链
继承的几种方式
类的定义、实例化
类的定义/类的声明
方式一:用构造函数模拟类(传统写法)
1 | function Animal1() { |
方式二:用 class 声明(ES6的写法)
1 | class Animal2 { |
控制台的效果:

实例化
类的实例化很简单,直接 new 出来即可。
1 | console.log(new Animal1(),new Animal2()); //实例化。如果括号里没有参数,则括号可以省略 |

继承的几种方式
继承的本质就是原型链。
继承的方式有几种?每种形式的优缺点是?这些问题必问的。其实就是考察你对原型链的掌握程度。
方式一:借助构造函数
1 | function Parent1() { |
【重要】上方代码中,最重要的那行代码:在子类的构造函数里写了Parent1.call(this);,意思是:让Parent的构造函数在child的构造函数中执行。发生的变化是:改变this的指向,parent的实例 –> 改为指向child的实例。导致 parent的实例的属性挂在到了child的实例上,这就实现了继承。
打印结果:
