JavaScriptでプログラムを組んだり人の作ったコードを読んでいると、よく出てくる“this”という表現。 これ、例えば同一の関数内のはずなのに、そのときどきで指しているものが異なったりして結構わかりにくい、と感じる方も多いのではないでしょうか。 ■同一関数内で'this'が指すものが異なる例 function whatisthis(obj) { alert('[A](this===window)→'+(this===window)+' [B](this===obj)→'+(this===obj)); } var obj={ obj_whatisthis : whatisthis }; var ref_whatisthis = obj.obj_whatisthis; var obj2={ ref2_whatisthis : obj.obj_whatisthis }; //(1)関数とし
