所以我正在编写一个函数,它将接受一个参数(另一个函数),当未定义时,它将被分配一个默认值。将该默认值分配为 an()=>{}
似乎不起作用。但是,当我将默认函数包装(()=>{})
或编写一个 normalfunction()
时,它似乎工作得很好。像下面这样的代码:
不工作
const f1 = f2 => {
f2 = f2 || () => alert("No default Listeners defined!");
}
在职的
const f1 = f2 => {
f2 = f2 || (() => alert("No default Listeners defined!"));
}
const f3 = f2 => {
f2 = f2 || function() {
alert("No default Listeners defined!")
};
}
我能否解释一下为什么第一个不工作而接下来的两个工作?我怀疑它可能与函数声明 V 函数表达式有关,我对此进行了一些搜索,但找不到正确的解释。具有相同的链接也足够了。谢谢你。