javascript之this探究

this是基于上下文环境来变动的

可以用不同的方法进行函数调用,不用的调用机制决定了函数上下文的不同。
调用者 caller 被调用者 callee,this指向 caller。

作为普通函数进行调用时,其上下文环境是全局对象(window)

1.png

作为方法进行调用时,其上下文是拥有该方法的对象(隐式调用)

javascript之this探究_第1张图片
2.png

作为构造器进行调用时,其上下文是一个新分配的对象

javascript之this探究_第2张图片
3.png

通过函数的apply()或call()方法进行调用时,上下文可以设置成任意值(显示调用)

javascript之this探究_第3张图片
4.png

你可能感兴趣的:(javascript之this探究)