0
假设有两个函数。在javascript中使用箭头函数进行回调
function foo(callback) {
...
}
function bar() {
...
}
有什么区别时,我打电话foo(bar)
和foo(() => bar())
假设酒吧不需要参数?
我最近前一个发生错误this
上下文,而第二个工作正常。我知道箭头函数将this
上下文绑定到函数中,我不知道有什么区别。
仅供参考,这里是有问题的代码。
socket.disconnect(socket.connect); // line 1
socket.disconnect(() => socket.connect()); // line 2
socket.disconnect(function() { socket.connect(); }); // line 3
我刚发现问题可能与上下文无关。这可能是应用或绑定的东西。因为第2行和第3行工作正常,而只有第1行显示错误。
你有研究的'this'的主题?有很多关于SO的信息,你可以通过一个简单的搜索找到... – trincot
_“我知道箭头函数绑定这个上下文”_,不,它不绑定任何上下文,“this'将会是什么外部范围。 –
“箭头函数是匿名的,并改变了它在函数中绑定的方式。”我在文档中阅读它。 – emil