浅析this的指向问题
目录
1. this的指向:谁调用指向谁(指向最近的调用者)
第一个在全局环境中,this一定指向全局对象window
第二个虽然在函数内部,但是这个函数在这里是全局属性,会被挂载在window上,也就相当于window.a()
,this自然指向window
谁调用指向谁(指向最近的调用者)
2. 箭头函数的this指向
箭头函数没有作用域,所以向最近的作用域中寻找调用者
可以看到this也是在作用域往上找,就近原则
3. 改变this的指向
call
,apply()
,bind()
前两者一样,改变this指向后会调用一次,区别在于传参,call以对象形式传参,apply方法以数组形式传参
bind()
的不同在于改变this指向后不会调用