导出默认值时使用 async function 还是 async =>?

46
export default async function () {

};
或者
export default async () => {

};

导出默认函数时应该选择哪一个并解释原因?


如果您不打算为函数命名,那么可能是第二个。 - Andy Ray
调用该函数的代码是否需要能够 .call().apply().bind() 它? - nnnnnn
2
在第一个例子中,不需要最后的分号。 - user663031
1个回答

45

首选第一种方式。它是一个声明,而不是表达式的值,具有微妙的优势(subtle advantages)。如果需要,也可以轻松命名,这是一个好习惯。此外,在某些情况下,箭头函数存在一些缺点,因此除非您绝对需要它们来保留this值等,否则最好避免使用它们。省略5个字符的输入几乎没有什么价值。


太对了!这正是我想听到的!谢谢你! - basickarl

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接