es6箭头函数中return的用法

最近在项目中频繁的使用了箭头函数,在使用的过程中对return关键字用法比较困惑,下面对其使用方法进行记录:

  • 如果箭头函数的代码块部分多于一条语句,就要使用大括号将它们括起来,并且使用return关键字返回

例子:

const foo = (a, b) => {
   a+b;
}
foo(1, 2) // undefined

const foo1 = (a, b) => {
   return a+b;
}
foo1(1, 2) // 3

凡是用大括号括起来的部分如果想拿到返回值就必须用return关键字返回,否则返回undefined

  • 如果箭头函数只有一行语句,可以省略大括号,并且省略return关键字。
    例子:
const foo = (a, b) => a+b // 等价于const foo = (a, b) => { return a+b }
foo(1, 2) // 3

这里的foo = (a, b) => a+b相当于foo = (a, b) => { return a+b }

上面的用法可以用来简化回调函数,看下面的例子:

// 正常函数写法
[1,2,3].map(function (x) {
  return x * x;
});

// 箭头函数写法
[1,2,3].map(x => x * x);

可以看到,使用了箭头函数我们省略了函数的{}return关键字,使函数变得更加简洁。

下面的是我的公众号二维码图片,欢迎关注。
在这里插入图片描述

你可能感兴趣的:(es6,javascript)