懵逼的this指向
请看以下代码:
以上的console.log打印出来的,如果你能完全知道,请忽略,如果你不知道,那就接下来看吧。
console.log打印的结果:
Google非常智能地把对象给打印出来了,看结果,很明显地知道:
(1)debugger下面的第一个this是指向外面的Test对象的。因为
init的本质是一个箭头函数,意思是说init里面的this都是指向外面的Test的。箭头函数的本质其实是:
(2)用new的方式初始化一个实例,则其里面的this指的就是它本身
(3)而直接用过this调用myTest的话,相当于直接使用的箭头函数。