从例子的角度解题: function foo() { var r = bindThis( function(a, b){return this.test + a + b}, {test: 2})(2, 3); return r === 7; }正常情况下,为了改变f的this指向,指向到target,我们会使用bind、call、apply, 就是这样: f.apply(target, [arg1, arg2, ...]);bindThis函数在执行完后需要继续执行,因此函数内部需要return一个function以接收参数(2,3)继续执...