前言:与我们常见的很多语言不同,JavaScript 函数中的 ​​this​​​ 指向并不是在函数定义的时候确定的,而是在调用的时候确定的。换句话说,函数的调用方式决定了 ​​this​​ 指向。

JavaScript 中,普通的函数调用方式有三种:直接调用、方法调用和 ​​new​​​ 调用。除此之外,还有一些特殊的调用方式,比如通过 ​​bind()​​​ 将函数绑定到对象之后再进行调用、通过 ​​call()​​​、​​apply()​​​ 进行调用等。而 es6 引入了箭头函数之后,箭头函数调用时,其 ​​this​​​ 指向又有所不同。下面就来分析这些情况下的 ​​this​​ 指向。

正文