この解答例はChatGPTによって生成されています,正しいかは自己判断で。 皆の投稿からも解答例が見つかるかもしれませんよ。
BFE.devでのAI解答例 - JavaScript クイズ
49. `this` IV
以下が出力されます:
1
10
2
1
詳細な説明:
a.foo1.call()
は、this.bar
が未定義であるため、var bar = 1
のグローバル変数bar
をインクリメントした後に 1 を返します。したがって、出力された値は1
です。a.foo1()
は、this.bar
がオブジェクトa
のプロパティbar
であるため、a
オブジェクトのプロパティbar
の値をインクリメントした後に10
を返します。 したがって、出力された値は10
です。a.foo2.call()
とa.foo2()
は、内部的にはfoo
関数を呼び出しているため、this.bar
の値を変更しているプロパティはありません。foo
関数が実行されると、var bar = 1
のグローバル変数bar
がインクリメントされ、2
が返されます。 したがって、a.foo2.call()
は2
を返し、a.foo2()
は1
を返します。