可以先回答this在不同的场合指向的是什么,在来回答什么时候用到this
this的指向
this表示当前对象,this的指向是根据调用的上下文来决定的,默认指向window对象,指向window对象时可以省略不写,
例如:
this.alert() <=> window.alert()<=> alert();
1、调用的上下文环境包括全局和局部
全局环境就是在<script></script>里面,这里的this始终指向的是window对象,
<script>
console.log(<strong>this</strong>);//指向window对象
</script>
局部环境
1)在全局作用域下直接调用函数,this指向window
function func(){
console.log(this) ;//this指向的还是window对象
}
func()
2)对象函数调用,哪个对象调用就指向哪个对象
3)使用 new 实例化对象,在构造函数中的this指向实例化对象。
4)使用call或apply改变this的指向
加分项
1. 用于区分全局变量和局部变量,需要使用this
2.返回函数当前的对象,
3.将当前的对象传递到下一个函数