与对象属性同名的Prototype属性

时间:2012-05-31 11:09:11

标签: javascript prototype-programming

我有一小段代码,使用相同的名称分配原型属性和对象属性。在创建对象后访问此testNumber将始终显示对象属性,我理解它将首先在对象上查找属性,然后在对象原型中查找,然后是原型的原型等。

但我的问题是,在这种情况下有没有办法直接访问原型的属性? [只是一个注释,我不知道什么时候我真的需要在实践中做到这一点,但这只是我想要找到的,为了我自己的理智]。

function MyObject1(formalParameter){

    this.testNumber = formalParameter;
}

​MyObject1.prototype.testNumber​ = 55;

var mine = new MyObject1(10);
alert(mine.testNumber);

1 个答案:

答案 0 :(得分:2)

您可以通过实例的constructor属性访问原型:

alert(mine.constructor.prototype.testNumber);

如果您在没有保留其constructor属性的情况下使用原型完成了奇怪的事情,或者由于某种原因您有一个名为constructor的实例属性,则无效。