欢迎光临散文网 会员登陆 & 注册

箭头函数

2023-08-07 13:09 作者:十三他很帅  | 我要投稿

作为ES6中的新特性,肥箭头函数(Fat Arrow Functions)可以帮助我们用更少的代码写出更多的功能。它的名字源于其语法符号=>,看起来像一只'肥箭头',相比之下,传统箭头->则显得较为细长。许多程序员可能已经在其他语言(如Haskell)中见过这种类型的函数,被称为'lambda表达式'或'匿名函数'。之所以称之为匿名,是因为这些箭头函数并没有描述性的函数名称。

以下简称箭头函数

箭头函数有哪些优点?

  • 语法简洁:不再需要重复书写function关键字,有效减少了代码行数

  • 语义明晰:能够从周围上下文捕获this关键字的引用

简单语法示例

观察以下两段完全相同功能的代码片段,你将迅速理解箭头函数的使用方法:

从上述示例中我们可以看到,箭头函数在这种情况下可以节省你输入括号、函数和返回关键字的时间。我建议你总是在参数输入周围添加括号,因为当有多个输入参数时,如(x,y) => x+y,必须要用到括号。这样做可以避免在不同使用场景下忘记添加括号。但以上面的代码为例,它也可以写成这样:x => x*x。至此,我们看到的改进主要体现在语法层面,能够有效减少代码行数并提高代码的可读性。

this的词法绑定

使用箭头函数还有另一个好处。那就是处理this上下文的问题。使用箭头函数,你不再需要考虑.bind(this)或设置that = this,因为箭头函数会从词法环境中获取this的上下文。请看下面的例子:

可以在MDN网站找到更多关于箭头函数的信息

箭头函数的评论 (共 条)

分享到微博请遵守国家法律