JavaScriptクラススーパー
定義と使用法
super
キーワードは、親クラスのコンストラクターを呼び出して、親のプロパティとメソッドにアクセスするために使用されます。
ヒント:「継承」の概念(親クラスと子クラス)をよりよく理解するには、JavaScriptクラスのチュートリアルをお読みください。
例
extends
キーワードを使用して、「Car」クラスからメソッドを継承する「Model」という名前のクラスを作成します。
コンストラクターメソッドでメソッドを呼び出すことによりsuper()
、親のコンストラクターメソッドを呼び出し、親のプロパティとメソッドにアクセスします。
class Car {
constructor(brand) {
this.carname =
brand;
}
present() {
return 'I have a ' + this.carname;
}
}
class Model extends Car {
constructor(brand, mod) {
super(brand);
this.model = mod;
}
show() {
return this.present() + ', it is a ' + this.model;
}
}
mycar = new Model("Ford", "Mustang");
document.getElementById("demo").innerHTML
= mycar.show();
ブラウザのサポート
super
ECMAScript6(ES6)機能です。
ES6(JavaScript 2015)は、最新のすべてのブラウザーでサポートされています。
Chrome | Edge | Firefox | Safari | Opera |
Yes | Yes | Yes | Yes | Yes |
super
Internet Explorer 11(またはそれ以前)ではサポートされていません。
構文
super(arguments); // calls the parent constructor (only inside
the constructor)
super.parentMethod(arguments); // calls a parent method
技術的な詳細
JavaScriptバージョン: | ECMAScript 2015(ES6) |
---|
関連ページ
JavaScriptチュートリアル:JavaScriptクラス
JavaScriptチュートリアル:JavaScript ES6(EcmaScript 2015)
JavaScriptリファレンス:extendsキーワード
JavaScriptリファレンス:constructor()メソッド