export function baz() {
return 'bar';
}
它们像这样:exports.baz = baz;
function baz() {
return 'bar';
}
var foo = exports.foo = function foo() {
return 'bar';
};
看起来就像使用const/箭头函数组合声明了一个额外的变量(
foo
),这似乎是简单函数声明的不必要的额外步骤。
差异很小。两者都声明一个变量。
a
const
变量在您的模块中也是恒定的,而理论上的函数声明可以从模块内部覆盖
箭头函数是箭头函数不能成为构造函数或使用动态
this
const
ss中丢失。
const
是不提起的,因此您在声明它之前不能使用export const foo = () => 'bar'
foo()
如果您使用
Block-scoped variable 'foo' used before its declaration
虽然很好,但是您可以在文件中的任何地方,甚至在声明之前使用
export function baz() { return 'bar'; }