次のコード スニペットをご覧ください。
Foo() {}
var bar = new Foo(); /* uses Foo as constructor for new object */
ここで、プロパティ x をオブジェクトに追加し、その値を 2 に割り当てる関数を作成します。
function addX() {
this.x = 2;
}
私の質問は、なぜこれが x プロパティを bar オブジェクトに追加することに成功しないのかということです:
addX(bar);
これは次のことを行います:
addX.apply(bar);
彼らは同じことをすべきではありませんか?
私は言語と一般的な OOP をよりよく理解しようとしているジュニア JavaScript プログラマーです。対応する実際の例はありません。つまり、私は現在プロジェクトの途中ではありません。オブジェクトでできることとできないことを学んでいて、その理由を理解しようとしています。