var obj = new foo()的意思?是不是obj指向 foo.prototype,还是指向foo,foo是对象,foo.prototype是原型,这个问题是在《javscript深入简出》的4-2创建对象中的。希望能对着视频中的图讲解一下,谢谢了!
Gavin_Alison
浏览 2592回答 4
4回答
tyc1
var obj = new foo();首先new后面的全部是构造函数,所以foo是一个构造函数每个函数都会有一个prototype属性,它的类型是object,所以叫对象属性,还有一个constructor属性,指向的就是function foo(){}这个函数new出来的都是对象,所以obj是一个对象,对象上有一个__proto__标签,但这个标签不对外暴露,这个跟跟原型prototype是不一样的,不要弄混淆了。这个__proto__标签指向的就是foo的原型,即foo.prototype