お世話になっております。
ここで、やや疑問に感じたのは、Boardクラスではコンストラクターの中で
this.setup(); と定義しているのに対して、Panelクラスではコンストラクターで
this.getEl(); とは書かれていない点です。
勿論、以下の様に書いてみても同じ結果でした。
constructor(){
this.el = document.createElement('li');
this.el.classList.add('pressed');
this.getEl(); ← これをつけ加えました
}
getEl(){
return this.el;
}
これは、最後にconst board = new Board();とインスタンス化する際には、
「クラスのコンストラクターの中が実行される」けれども、以下のBoardクラスの
コンストラクターでPanelクラスを呼び出した場合は、panelsオブジェクトには
getElメソッドが継承されるのでしょうか?
constructor(){
this.panels = [];
for(let i = 0; i < 4; i++){
this.panels.push(new Panel()); ← ここです
}
this.setup();
}
恐らく、「参照」という問題が絡んでくるのだと思いますが..。
この回答を見るにはプレミアムプランへの登録が必要です
プレミアムプランとは?