私の理解ではObject.hasOwnProperty
、オブジェクトに独自のプロパティ名があるかどうか、つまり継承されていないプロパティがあるかどうかをメソッドがチェックするということです。つまり、プロパティa. 存在しない、またはb. 継承されている場合。
私が間違っている場合は修正してください。ただし、これが古典的な継承を使用しない限り、以下のコードではbar
継承されませんか? プロパティが継承されたプロパティである場合、メソッドが true を返すのFoo
はなぜですか? ここで何が間違っていたのですか?hasOwnProperty
propname
また、オブジェクトで をどのように使用しhasOwnProperty
ますFoo
か? ここのコードは、オブジェクト false
をチェックするときに戻ります。Foo
function Foo() {
this.propname = 'test';
}
var bar = new Foo();
console.log(bar.hasOwnProperty('propname')); // returns true
console.log(Foo.hasOwnProperty('propname')); // returns false