是否可以使用.bind?
的回调函数下面的简化示例会返回6() => 99
,而不是我预期的105
。它需要以不同的方式构建吗? MDN doesn't have a comparable example to use as a blueprint。非常感谢任何输入!
"use strict";
let testObject = {
valueOne: 1,
valueTwo: 2,
valueThree: 3
}
function addValues(bonusParameter) {
return this.valueOne + this.valueTwo + this.valueThree + bonusParameter;
}
let finalAnswer = addValues.bind(testObject, () => 99);
console.log(finalAnswer());
答案 0 :(得分:3)
你没有真正调用你的bonusParameter
所以它只是被奇怪地评估为一个字符串。看下面你可以看到它正常工作。
"use strict";
let testObject = {
valueOne: 1,
valueTwo: 2,
valueThree: 3
}
function addValues(bonusParameter) {
return this.valueOne + this.valueTwo + this.valueThree + bonusParameter(); // calling bonusParameter
}
let finalAnswer = addValues.bind(testObject, () => 99);
console.log(finalAnswer());