JS中的this指向

首先我们应该明白js中的this是在代码运行期进行绑定的,这也是js中的this具备多重含义的原因。
window中的方法就是全局函数,
window中的属性就是全局变量。
在es6之前,this的指向取决于函数的调用方式,有以下几种调用方式:
1.函数调用
2.方法调用
3.构造函数的调用
4.上下文的调用方式

//函数调用方式

2.方法调用方式


3.构造函数的调用方式


4.上下文的调用方式
call/applay/bind方法,切换函数执行的上下文环境,就是改变this的指向

	

call方法的 第一个参数:
1.若为复杂类型数据,如对象数组,则为指向的对象。
2.若为null/Undefined,this指向window;
3.若为数字,this指向Number构造函数的实例,如Number{数字}
4.若为字符串,this指向String构造函数的实例
5.若为布尔值,this指向Boolean构造函数的实例

你可能感兴趣的:(JS中的this指向)