Javascript callback.bind()在返回承诺时起什么作用?
我在看这本书的源代码,我想我理解了大部分,但我不理解这一点:Javascript callback.bind()在返回承诺时起什么作用?,javascript,Javascript,我在看这本书的源代码,我想我理解了大部分,但我不理解这一点: this.checkNpm().then(this.callback.bind(this, null)).catch(this.callback); 为什么.catch也不调用.bind 另外checkNpm()还返回一个承诺,并绑定到this。在这种情况下,这个是什么?根据我的理解,模块想要做的是如果这个。checkNpm触发,然后(即成功),然后作者想将this.callback函数的作用域设置为执行此行的作用域。如果函数触发了
this.checkNpm().then(this.callback.bind(this, null)).catch(this.callback);
为什么.catch
也不调用.bind
另外
checkNpm()
还返回一个承诺,并绑定到this
。在这种情况下,这个是什么?根据我的理解,模块想要做的是如果这个。checkNpm
触发,然后(即成功),然后作者想将this.callback
函数的作用域设置为执行此行的作用域。如果函数触发了catch,则该作用域可能无关紧要,因为它可能只会输出一些错误。请记住,bind
函数将返回一个函数,该函数将在第一个参数的上下文中执行原始函数(还有设置参数的功能,如图所示,但这不是重点)
希望这是澄清