有人可以解释为什么我们创建一个函数,然后使用“ let”将匿名函数分配给变量吗?这样写的目的是什么?
function buildName(firstName: string, ...restOfName: string[]) {
return firstName + " " + restOfName.join(" ");
}
let buildNameFun: (fname: string, ...rest: string[]) => string = buildName;
答案 0 :(得分:1)
我有一些猜测:
严重的是,没有充分的理由这样做。
答案 1 :(得分:1)
我会说这是因为您必须将箭头函数分配给变量才能在其他地方使用它。 There are couple of differences between arrow functions and es5 functions,因此,如果某人需要箭头功能,那是他或她声明它的唯一方法。
此外,请记住,未悬挂 let 和 const ,这与通过 function 关键字声明的函数相反。
foo() // this will work
function foo () {
console.log('foo')
}
bar() // this will not
let bar = () => console.log('bar');