js中this指向以及改变this指向方法
this指向
1、在构造函数中this指向实例化对象
2、在自定义对象的函数(方法)中this指向当前的对象
3、在普通函数中this指向window
4、在事件函数中this指向事件源
5、在定时器函数中this指向window
6、原型对象的函数中:
如果是实例对象调用,this指向实例对象
如果是原型对象调用,this指向原型对象
7、在数组函数中指向当前数组
改变this指向
一、call()
1、可以进行函数的调用
2、可以改变this的指向,如果没有参数,this指向window
3、可以改变this的指向,如果有一个参数,this指向该参数
4、可以改变this的指向,如果有多个参数,this指向第一个参数,剩下的是个参数列表(构造函数继承的案例)
二、apply()
1、可以进行函数的调用
2、可以改变this的指向,如果没有参数,this指向window
3、可以改变this的指向,如果有一个参数,this指向该参数
4、可以改变this的指向,如果有多个参数,第一个参数是null或者window,第二个参数是数组
三、bind()
1、不可以进行函数的调用
2、可以改变this的指向,如果没有参数,this指向window
3、可以改变this的指向,如果有一个参数,this指向该参数