a = function() {}
a.prototype.b = 10
console.log(a.b)
我对原型(prototype)继承的理解是,如果属性是在对象本身中定义的,那么该属性的值就被定义了。
如果该属性未在对象中定义,则它会查找原型(prototype)链,我将其理解为在 a.prototype
下查找并返回值。
在上述情况下,它打印 undefined
而我期望 10
。
最佳答案
var a = function() {};
a
是一个函数
a.prototype.b = 10;
a
的所有实例都以 10 的属性值 .b
开头。
console.log(a.b) //undefined
a
不是 a 的实例,因此只有 function(){}
没有属性 b,因此记录未定义。
var A = new a();
console.log(A.b);//10;
现在我们有一个 a 的实例,因此记录了 10。
关于javascript - 原型(prototype)继承 - 访问原型(prototype)属性中的 Prop ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33817263/