函数调用 首先需要从函数的调用开始讲起. JS(ES5)里面有三种函数调用形式: func(p1, p2) obj.child.method(p1, p2) func.call(context, p1, p2) // 先不讲 apply 一般,初学者都知道前两种形式,而且认为前两种形式「优于」第三种形式. 从看到这篇文章起,你一定要记住,第三种调用形式,才是正常调用形式: func.call(context, p1, p2) 其他两种都是语法糖,可以等价地变为 call 形式: func(p1,…