问答详情
源自:8-1 概念与继承

关于 原型的继承 这一节的一个疑问

在function Foo(){this.y=2} var obj3=new Foo();我看到在左边的图中,y=2被放在obj3的对象上,我试了一下obj3.hasOwnProperty('y');结果是false,所以我想问y=2是不是应该属于Foo.prototype 对象的。而在用构造器创建了obj3后,this指针指向的就是obj3?

提问者:捡了幸福的猪 2015-10-10 20:59

个回答

  • xtfzp
    2015-10-15 22:44:07
    已采纳

    构造函数的this指向的是在构造函数执行时新建的那个对象,这个新建的对象的原型是Foo.prototype,所以this.y设置的是新建的这个对象的自有属性,所以你说的function Foo(){this.y=2} var obj3=new Foo();obj3.hasOwnProperty('y');结果是false,是不可能的