※ ChatGPTを利用し、要約された質問です(原文:javascript 親オブジェクトと子オブジェクトを分離させたい)
JavaScriptで親オブジェクトと子オブジェクトを分離させる方法
このQ&Aのポイント
JavaScriptで親オブジェクトと子オブジェクトを分離させる方法を知りたいです。
現在、JavaScriptのコードで親オブジェクトと子オブジェクトを扱っていますが、子オブジェクト内で親オブジェクトのプロパティを参照する方法が分からず困っています。
具体的には、親オブジェクト内で定義されたプロパティを子オブジェクト内の関数で使用したいのですが、どのようにすればいいのでしょうか?
javascript 親オブジェクトと子オブジェクトを分離させたい
例えばjavascriptで下のようなコードを書いたとします。
a=new Array()
a[0]=new OBJ();
function OBJ(){
this.prop=document.getElementById('aaa')
this.prop2=document.getElementById('bbb')
}
a[0].prop.addEventListener(click,func,false);
function func(){
???
}
func()関数内でthisを使うとa[0].propを参照できます。
一方、a[0].prop2を参照するにはどうすればいいのでしょうか?
配列の要素番号を指定しないで参照させる方法が分からず悩んでいます。
下のようにもしできるのであればいいのですが。。。
a[0]とpropのオブジェクトを分割->a[0]オブジェクトを抜き出し->
a[0]オブジェクトにprop2を追加
または別の方法があるのでしょうか。
ぜひぜひご回答のほどお願いいたします。
お礼
ご回答ありがとうございます。 確かにこの方法でa[0]をthisとして使えます。 少し説明が足りなかった点があったのですが、私がやりたいのはイベントリスナーで呼び出した関数(とういかオブジェクトですね)内で、配列の引数を指定せず対象の配列を使うことです。 addEventListenerの第二引数で配列要素番号を引数として渡せればいいんですけれど。。。