function test() {
this.a = {
b: 4
};
}
test.prototype.a = {
c: 5
};
var example = new test();
なぜexample.a.c == undefined
ですか?Javascriptプロトタイプは継承されずに未定義ですか?
プロトタイプを継承して返さないでください。5
?
これが不可能な場合は、プロトタイプを返すようにコードを追加するにはいくつかの方法があります?:
function test() {
this.a = {
b: 4,
c: *this.return.prototype*
};
}
あなたのプロトタイプは 'this.a'がtest.prototype.a''よりも優先されることを除いて、example.a.c' 'のために働くだろう。 – Barmar
@Barmarので、新しいオブジェクトを作成する2つのオブジェクトを持つ$ .extend()とは異なります。a = {b:4、c:5} ;? – seahorsepip
正しいですが、プロトタイプは再帰的にマージされません。 – Barmar