es6之后,感觉用函数表达式的越来越多了,特别是ts中。
比如:
const fn: Fn = () => {
...
}
我知道这样做的原因有:
- 函数表达式可以控制变量提升
- (ts中)函数表达式可以更方便添加类型
es6之后,感觉用函数表达式的越来越多了,特别是ts中。
比如:
const fn: Fn = () => {
...
}
我知道这样做的原因有:
主要原因是控制变量提升和解决this问题,还有一个好处就是某些情况下写法更精简。这点虽然算不上什么优势吧,但是是客观存在的减少了代码量和行数,比如
const getTime = () => new Date();
vs
function getTime() {
return new Date();
}
10 回答11.1k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
3 回答5.1k 阅读✓ 已解决
3 回答1.8k 阅读✓ 已解决
你已经自己发现两点了,我再补充一点:
用表达式的一般都是用箭头函数,而箭头函数里的
this
指向是很清晰的,可以减少很多奇奇怪怪的问题。