我正在探索 JavaScript 中的原型(prototype)。
function A () { this.x = 7; };
function B () {};
B.prototype = new A();
var b = new B();
b.x; // => 7
// But why is it giving 'false' below
b.hasOwnProperty('x'); // => false
我的查询是,
这是正确的代码吗?
如果 'b' 具有 'x' 的值,那么它应该是它的属性。如果是这样,为什么它给出错误。
请澄清。
最佳答案
b.x
是 b
的 prototype 上的属性,而不是 b
本身的属性。
hasOwnProperty
仅检查自己的属性,因此得名。
关于javascript - 在 JavaScript 中使用 new 运算符定义原型(prototype),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23720653/