ES6新增的函数:Arrow Function,定义方式就是一个箭头

箭头函数相当于匿名函数,并且简化了函数定义,和匿名函数最大的区别在于其内部的this不再“乱跑”,而是由上下文确定
  • 定义仅包含一个表达式时,可以省略花括号和return
  • 定义包含多条语句时,则不能省略花括号和return
  • 参数不止一个时,需要用括号括起来

x => x * x 

//相当于
function (x) {
    return x * x;
}

x => {
    if (x > 0) {
        return x * x;
    }
    else {
        return - x * x;
    }
}

// 两个参数:
(x, y) => x * x + y * y

// 无参数:
() => 3.14

// 可变参数:
(x, y, ...rest) => {
    var i, sum = x + y;
    for (i=0; i<rest.length; i++) {
        sum += rest[i];
    }
    return sum;
}

注意:如果要返回一个对象,如果是但表达式,需要增加括号,因为对象的函数体和语法有冲突:
// SyntaxError:
x => { foo: x }

// ok:
x => ({ foo: x })

其他备注参考链接

相关文章:

  • 2021-12-25
  • 2022-12-23
猜你喜欢
  • 2021-04-03
  • 2021-07-24
  • 2021-11-26
  • 2021-12-19
  • 2022-02-07
相关资源
相似解决方案