箭头函数

箭头函数

ES6新增了使用箭头语法定义语法函数表达式的能力。很大程度上,箭头函数实例化的函数对象与正式的函数表达式创建的函数对象行为是相同的。任何时候使用函数表达式的地方,都可以使用箭头函数

    let fn = (a, b) => {
        return a + b
    }

    let fun = function (a, b) {
        return a + b
    }

    console.log(fn(1, 2))   // 3
    console.log(fun(1, 2))  // 3

箭头函数适合嵌入函数

    let arr = [1, 2, 3, 4];
    console.log(
        arr.map(function (item) {
            return item + 1
        })
    )   // [2,3,4,5]

    console.log(
        arr.map((item) => {
            return item + 1
        })
    )   // [2,3,4,5]

箭头函数如果只有一个参数,可以省略括号

    let a = (i) => {
        console.log(i)
    }
    // 当前箭头函数只有一个参数,所以可以省略括号变成以下写法,
    let a = i => {
        console.log(i)
    }

箭头函数如果有多个参数,中间用,逗号隔开

    // 如果有多个参数,中间用逗号隔开
    let a = (i, j, k) => {
        console.log(i, j, k)
    }

如果没有参数,则圆括号必须加

    // 如果没有参数,则圆括号必须加
    let a = () => {
        console.log("箭头函数没有参数")
    }

箭头函数也可以省略掉花括号,但这样会改变函数的行为,使用花括号就跟常规函数一样,可以在函数体内写入多条语句,如果不带花括号,那么就说明箭头后面只有一条语句,且隐式的返回这条语句的值

    let a = () => {
        console.log("我是带花括号的箭头函数")
        console.log("我是带花括号的箭头函数")
        console.log("我是带花括号的箭头函数")
    }

    let a = () => console.log("我是不带花括号的箭头函数")

    let b = i => i + 1
    console.log(b(1))   // 这个时候箭头函数隐式的返回了i+1的值,所以打印结果为2

虽然箭头函数的语法简洁,但是还是有很多场景不适合用,箭头函数不能用arguments、super和target,也不能用作构造函数,箭头函数也没有prototype属性。

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值