Live2d Test Env

ES6基础-constructor与super

时间仓促,抱歉抱歉

super指向的是 父类的constructor,

子类中constructor的super中的属性本质指的是父类的constructor内定义的属性

子类的constructor中写入super的本质是在子类内部调用父类的constructor中的属性,该属性是由子类自由导入的

子类必须在constructor中调用super方法,否则报错,这是由于子类没有自己的this对象,而是继承父类的this对象,如果不调用super方法,子类得不到自己的this对象

ES5的继承,实质是先创造子类的实例对象this,然后再将父类的方法添加到this上面(Parent.apply(this))

ES6的继承,实质是先创造父类的实例对象this(所以必须先调用super方法),然后再用子类的构造函数修改this。

-----------------------》! extends与super总是成对出现的,子类中的super返回父类实例,必须在super之后 才能使用this关键字,这是由于子类实例的创建是基于对父类实例进行的加工

参考于 http://caibaojian.com/es6/class.html

posted @ 2021-04-20 09:44  致爱丽丝  阅读(426)  评论(0编辑  收藏  举报