In a previous question,我被鼓励去问这个后续问题:如果我知道some.func
只需要一个参数,它会把函数some.func
包装成类似(arg) => some.func(arg)
的东西有什么区别?封闭函数的区别?
举一个具体的例子:在我的其他问题,我观察到一个令人惊讶的差异使用
.on("mouseover", tip.show)
之间对
.on("mouseover", (d) => tip.show(d))
在这种情况下,第一个版本确实有预期的行为,而第二版本的行为有所不同(请参阅jsfiddle of other question)。这里的原因是我不小心让tip
成为全球性的。
更一般的问题:为什么他们的行为不一样呢?