metalSingerオブジェクトは、オブジェクトSingerのプロトタイプ関数のみを継承します。シンガー(this.genre)と関数(this.rock)の変数をどのように継承できますか?JavaScriptで変数を継承する方法は?
1
A
答えて
0
クラスパターンは継承で使用できます。あなたはこれを達成することができます
https://developer.mozilla.org/en-US/docs/Learn/JavaScript/Objects/Inheritance
function Singer(g) {
this.genre = g;
this.rock = function() {
console.log("ROCK");
}
}
Singer.prototype.sing = function() {
console.log(this.genre);
}
function MetalSinger(g) {
Singer.call(this, g);
}
var ms = new MetalSinger("foo");
console.log(ms.rock());
0
一つの方法は、このような子コンストラクタ内で親コンストラクタ関数を呼び出すことである:
function Singer(g) {
this.genre = g;
this.rock = function() {
console.log("ROCK");
}
}
Singer.prototype.sing = function() {
console.log(this.genre);
}
function metalSinger() {
Singer.call(this, 'metal');
}
metalSinger.prototype = Object.create(Singer.prototype);
var james = new metalSinger();
james.sing();
この方法で構築する前に、子オブジェクトでは、オブジェクトを初期化するために親コンストラクタが最初に呼び出されます。
0
シンガー(this.genre)と関数(this.rock)の変数をどのように継承できますか?そうすることによって
Singer.call(this, genre);
、
metalSinger
のthis
オブジェクトにその(歌手の)プロパティを追加しmetalSinger
のコンテキストであなたの最初の呼び出しSinger
:このような基本的
。また、Object.create()
で新しいオブジェクトを作成し、すべての関数をPrototypeに入れる方が良いでしょう。
function Singer(g) {
this.genre = g;
}
Singer.prototype.sing = function() {
console.log(this.genre);
}
Singer.prototype.rock = function() {
console.log("ROCK");
}
function metalSinger(g) {
Singer.call(this, g);
}
metalSinger.prototype = Object.create(Singer.prototype);
var james = new metalSinger("metal");
james.sing(); // "metal"
james.rock(); // "ROCK"
関連する問題
- 1. Polymerで変数を継承する方法は?
- 2. JavaScriptからの変数アクセス継承メソッド
- 3. Visual Studioでフォーム間の変数を継承する方法
- 4. JavaScriptでプライベートメンバーを継承する方法は?
- 5. 継承変数(継承された変数を変更する)Unity(C#)
- 6. クラス継承の変数を同じ変数で正しくオーバーロードする方法
- 7. 継承 - インスタンス変数
- 8. as3継承変数
- 9. アクセス公共方法 - JavaScriptの継承
- 10. JavaScriptの継承魔法
- 11. クラスメソッドを継承するJavascript
- 12. Javascriptでクラス(またはオブジェクト)を継承(継承)
- 13. 継承クラスの@Autowired変数でテストクラスを書く方法
- 14. テンプレート継承で変数を扱う方法
- 15. coffescriptで引数付きのクラスを継承する方法は?
- 16. JavaScriptの継承
- 17. プロトタイプ継承(javascript)
- 18. JavaScriptプロトタイプ継承
- 19. Javascript継承
- 20. JavaScript:継承
- 21. Javascriptクラス継承
- 22. JavaScript継承プロトタイプ
- 23. スタイルシートを継承する方法は?
- 24. jaxbでobjectfactoryを継承する方法
- 25. android:duplicateParentStateでフォーカスを継承する方法
- 26. クラスをスカラーで継承する方法
- 27. Cでグループボックスを継承する方法
- 28. 継承をサブクラスでマップする方法
- 29. スウィフトでテーブルセルを継承する方法
- 30. 変数に割り当てられたjavascriptの匿名関数を継承する方法は?