balabal

导航

JS => 函数

定义一个箭头函数很简单,基本语法是:

([param] [, param]) => {

   statements

}

 

param => expression

param 是参数,根据参数个数不同,分这几种情况:

  • () => { ... } // 零个参数用 () 表示;
  • x => { ... } // 一个参数可以省略 ();
  • (x, y) => { ... } // 多参数不能省略 ();

当然,和普通函数一样,箭头函数也可以使用 ES6 新增的「默认参数」和「剩余参数」( Firefox15+ 开始支持):

var func1 = (x = 1, y = 2) => x + y;

func1(); // 得到 3

 

var func2 = (x, ...args) => { console.log(args) };

func2(1,2,3); // 输出 [2, 3]

箭头函数允许多行语句或者单行表达式作为函数体。多行语句要用 {} 括起来;单行表达式不需要 {},并且会作为函数返回值:

x => { return x * x }; // 函数返回 x * x

x => x * x; // 同上一行

x => return x * x; // SyntaxError 报错,不能省略 {}

x => { x * x }; // 合法,没有定义返回值,返回 undefined

箭头函数也是 JS 函数的一种,所以之前的 instanceof 和 typeof 依然可用:

var func1 = () => {};

func1 instanceof Function; // true

 

var func2 = () => {};

typeof func2; // "function"

 

posted on 2017-03-22 11:41  Alanooooo  阅读(489)  评论(0编辑  收藏  举报