在function Foo(){this.y=2} var obj3=new Foo();我看到在左边的图中,y=2被放在obj3的对象上,我试了一下obj3.hasOwnProperty('y');结果是false,所以我想问y=2是不是应该属于Foo.prototype 对象的。而在用构造器创建了obj3后,this指针指向的就是obj3?
构造函数的this指向的是在构造函数执行时新建的那个对象,这个新建的对象的原型是Foo.prototype,所以this.y设置的是新建的这个对象的自有属性,所以你说的function Foo(){this.y=2} var obj3=new Foo();obj3.hasOwnProperty('y');结果是false,是不可能的