基本クラス[継承]に属する子クラスオブジェクトのプロパティ(属性)を設定するにはどうすればよいですか?(ベースの属性を子に渡す)

デシュワル

私はクラスとOOPに不慣れで、クラスと継承を説明するチュートリアルに従っていて、何かに出くわしました。

基本クラスのコンストラクターに属する値を子クラスに渡すにはどうすればよいですか?

たとえば、BASEクラスに

this.name=name
this .age=age

子クラスは基本クラスを継承します

基本クラスには、2つのプロパティがあります

this.childSchoool=school
this.childfiends=friends

を使用して基本クラスの機能にアクセスできます super().func;

次のような子クラスオブジェクトを作成すると

let childobj = new child("school_name", 6);

子オブジェクトを学校名と年齢で初期化しますが

どのようにして設定することができますnameし、age子クラスのオブジェクトの?

マットエレン

簡単に言うと、別のクラス(classA)から継承しているクラス(classB)がある場合、classBコンストラクターでは、classAコンストラクターのパラメーターを取り込んで渡します。

MDNはこれを説明しています。

class Base {
  constructor(name, age){
    this.name = name;
    this.age = age;
  }
}

class Child extends Base {
  constructor(name, age, school, friends){
    super(name, age); //pass along to the Base constructor
    this.school = school;
    this.friends = friends;
  }
}

let achild = new Child('ben', 4, 'School1', 99);

パラメータの順序が重要です。ただし、名前付きパラメーターを使用することもできます。

let bchild = new Child(school='school2', age=9, name='chris', friends=22);

または、spread構文使用して、マップまたはオブジェクトを渡すことができます。

let amap = new Map([['name', 'sally'],['school', 'school1'],['age', 10],['friends', 9001]]);

let cchild = new Child(...amap);

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

Related 関連記事

ホットタグ

アーカイブ