なぜfooAとfooBの結果が異なるのか分かりません。foo.prototyp.x =&foo.prototype = {x:}の違い
var foo = function(){}
fooA = new foo();
foo.prototype.x = 1;
foo.prototype = { y: 2, z: 3};
console.log(fooA.x, fooA.y, fooA.z);// 1, undefined, undefined
fooB = new foo();
console.log(fooB.x, fooB.y, fooB.z);// undefined, 2, 3
foo.prototypは= {}の前に定義されたメソッドをオーバーライドしていますか?
fooAがprototype.xの前の状態である理由は、結果を継承しますが、yとzは継承しないのはなぜですか?
'Foo.prototypeは= {}' '実際Foo'を対象としてあるものを再定義しているが、あなたはただ前と変更後定義されたインスタンス間でキャッチしています。 'console.log(FooA);を使ってください。 console.log(FooB); 'の違いをはっきりと見てください。 –