node.js箭头函数使用

2019-08-29 14:46:06 浏览数 (2)

ES6允许使用=>定义函数,箭头函数使得表达更加简洁,例如

代码语言:javascript复制
// 正常函数写法
[1,2,3].map(function (x) {
  return x * x;
});

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

定义方式

1. 一行代码可以省略代码块花括号{}

代码语言:javascript复制
var f = () => 5;
//等同
var f = function () {
    return 5
}

2. 一个参数可以省略函数的小括号()

代码语言:javascript复制
var f = v => v;
//等同
var f = function f(v) {
    return v
}

3. 多个参数多行代码常规写法

代码语言:javascript复制
var sum = (num1, num2) => num1   num2;
// 等同于
var sum = function(num1, num2) {
    return num1   num2;
};

注意事项

  1. 函数体内的this,指向定义时的对象,而不是使用时的对象
  2. 不能当作构造函数,不能使用new命令
  3. 不能使用arguments对象,可以使用rest参数代替
  4. 不可使用yield命令,因此箭头函数不能用作Generator

0 人点赞