代码如下:
function test( ) { console.log(this === window); console.log(this === test); } test();//true false var a=new test();//false false
为什么用 var a=new test()的方式时,this === test为false呢,有人能帮忙解释一下吗?在这里this指的不是test本身么?
个人愚见:
直接调用 test(); this 指向的是 window 对象
new 后,改变了 test 的 this 指向,这时 this 是 该对象的一个 实例了,
this.constructor == test // true