[Javascript] ES6 Class Constructors and the Super Keyword
Posted Answer1215
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[Javascript] ES6 Class Constructors and the Super Keyword相关的知识,希望对你有一定的参考价值。
When the ES6 class shipped back in 2015, a number of additional keywords came with it. Two of these are constructor
and super
. Both of these are specific to the class
keyword and make working with classes manageable. Both are utilized when the new
keyword is used to create a new instance of a class
. constructor
s are called initially with the new
keyword and super
is how a subclass can utilize it‘s parent‘s methods (like it‘s parent‘s constructor function) within that child class
You have to call super() function when you extends one class:
class Rectangle { constuctor(height, width) { this.name = ‘Rectangle‘ this.height = height this.width = width } } class Square extends Rectangle { constructor(length) { super(length, length) this.name = ‘Square‘ } } const myShape = new Square(1) console.log(myShape)
Again, even if our rectangle class did not have a constructor, we‘d still need to call super within the square‘s constructor because it is required when we‘re working with subclasses that have constructors and when the this
keyword is used in the constructor.
class Rectangle { } class Square extends Rectangle { constructor(length) { super() this.name = ‘Square‘ } }
以上是关于[Javascript] ES6 Class Constructors and the Super Keyword的主要内容,如果未能解决你的问题,请参考以下文章