请问老师run2的this 为什么指向window,而不是xm?
来源:5-6 箭头函数
奇异果子chia
2020-08-12 21:50:29
const xm = { name:'xm', say:{ run:function () { console.log(this);//指向run方法 } }, say2:{ run2: () => { console.log(this);//指向window //定义的时候所处的环境中的this //箭头函数里的this就一直指向window吗?不是 } }, say3:function(){ setTimeout(() => { console.log(this);//this指向xm },200); } }; xm.say.run(); xm.say2.run2(); xm.say3();
1回答
好帮手慕粉
2020-08-13
同学你好,因为箭头函数没有自己的this,这里的箭头函数run2与xm属于同一级,而xm在windows上,所以run2的this也是指向windows的。
如果我的回答帮助了你,欢迎采纳。祝学习愉快~
相似问题