this指向

解析器在调用函数每次都会向函数内部传递一个隐含的参数,这个隐含的参数就是this

1.普通函数中,this指向window,严格模式("use strict")下是undefined

2.构造函数,原型对象中,this指向实例对象

3.定时器中,this指向window

4.对象方法中,this指向该对象

5.事件绑定中,this指向绑定事件对象

可以使用apply或者call 改变this的指向 和bind方法

使用方法:

函数名.apply(对象,[参数1,参数2...]);

函数名.call(对象,参数1,参数2...);

var newObj=函数名.bind(对象,参数1,参数2...);

区别:call和apply是直接调用,而bind有返回值,而返回值是复制之后的这个函数

原文地址:https://www.cnblogs.com/qtbb/p/11235909.html