首先,什么是软绑定? 所谓软绑定,是和硬绑定相对应的一个词,在详细解释软绑定之前,我们先来看看硬绑定.在JavaScript中,this的绑定是动态的,在函数被调用的时候绑定,它指向什么完全取决于函数在哪里调用,情况比较复杂,光是绑定规则就有默认绑定.隐式绑定.显式绑定.new绑定等,而硬绑定是显式绑定中的一种,通常情况下是通过调用函数的 apply() . call() 或者ES5里提供的 bind() 方法来实现硬绑定的. 硬绑定有什么问题,为什么需要软绑定 上述三个方法好是好,可以按照自己…