事件函数内部,this指向谁?(谁调用该函数,this指向谁)
1.事件函数内部的this:指向绑定事件的DOM对象
2.普通函数内部this:指向window对象
3.定时器函数内部this:指向window对象
4.对象的方法内部this:指向对象本身
“谁调用,this指向谁”
箭头函数内部this指向问题
1.看箭头函数 定义 在什么 位置 ,this与箭头函数定义位置有关
如果在局部作用域,箭头函数的this指向局部作用域所指向的内容
如果在全局作用域,箭头函数的this指向window
let fun3=()=>{console.log(this);//指向window}fun3()// (2)let obj={uname:'jon',age:18,eat:function(){//eat函数是个局部作用域console.log(this);//objreturn (food)=>{console.log(this);//obj}}}obj.eat()console.log(obj.eat());let fn=obj.eat()fn()// (3)// obj2只是一个对象,不能形成作用域,所以obj2就在全局作用域中// 所以内部函数也处在全局作用域中,let obj2={uname:'jon',age:18,speak:()=>{console.log(this);//window}}// (4)btn.onclick=function(){//函数是局部作用域,这个函数指向btnsetTimeout(()=>{console.log(this);//指向btn},1000)}
