首页 > 代码库 > 关于js的this的理解

关于js的this的理解

一、四种不同模式小调用的指向

1.函数调用模式的时候,this指向window

2.方法调用模式的时候,this指向方法所在的对象

3.构造函数模式的时候,this指向新生成的实例

4.apply/call调用模式的时候,this指向apply/call方法中的第一个参数

其中用到最多的应该是2和3了,在js基于对象的编程中这两项应该是最常用的

二、apply和call

1、apply和call的用法

所有的函数都包含这两种方法,可以认为apply和call方法强制函数内的this,指向某一个对象。

2、apply和call的区别

apply和call两者的区别仅在于被调用的函数(方法)内的this引用,this引用的是作为apply/call的第一个参数被传递的对象.而apply与call之间的不同之处在于两者对其他参数的传递方式.

关于js的this的理解