Javascript教程

Javascript教程(十二)箭头函数

2018-05-25  本文已影响0人  klmhly

ES6标准新增了一种新的函数:Arrow Function(箭头函数)。
箭头函数相当于匿名函数,并且简化了函数定义。箭头函数有两种格式,一种只包含一个表达式,连{ ... }和return都省略掉了。还有一种可以包含多条语句,这时候就不能省略{ ... }和return

1

//箭头函数
x => x * x             //箭头左边是参数,右边是函数体

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

2

x => {                   //箭头左边是参数,右边是函数体
    if (x > 0) {
        return x * x;
    }
    else {
        return - x * x;
    }
}

3. 如果参数不是一个,就需要用括号()括起来

// 两个参数:
(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;
}

4. 如果要返回一个对象
要用括号把对象括起来

x => ({ foo: x })         //要用括号把对象括起来

5. 注意:this

对于箭头函数来说,this总是指向词法作用域,也就是外层调用者obj,即使用call,bind,apply也无法改变它的指向。

上一篇下一篇

猜你喜欢

热点阅读