問題を説明するのは簡単ではありませんが、サンプルコードを見てください。リテラルオブジェクトの属性としての配列
var test = {
\t my_array: [],
\t my_var: ''
}
var a = Object.create(test);
var b = Object.create(test);
a.my_array.push('aaa');
b.my_array.push('bbb');
a.my_var = 'this is obj A';
b.my_var = 'this is obj B';
document.write(a.my_array[0]); //output: aaa
document.write('<br>');
document.write(b.my_array[0]); //output: aaa
document.write('<br>');
document.write(a.my_var); //output: this is obj A
document.write('<br>');
document.write(b.my_var); //output: this is obj B
方法であること、オブジェクトBはオブジェクトと同じ配列値を持っている可能性が?
[OK]を、私は問題を理解しています。しかし、どうすればそれを解決できますか?リテラル表記のクラスから分離した配列を持つseperatオブジェクトを作成することは可能ですか? –
@EvgeniTch新しいオブジェクトのプロパティを直接初期化する必要があります。通常、コンストラクタ関数でそれを行います。あるいは 'Object.assign()'を使うこともできます。 – Pointy