15621857753

ES6之箭头函数:对函数表达式的简写

来源:齐鲁建站 栏目:开发教程 阅读: 日期:2023-11-13

网站源码

箭头函数,是在ES6语法中对函数表达式的简写,对于声明式函数不能使用

一、何为函数表达式

函数表达式,又叫 匿名函数

也就是我们不需要单独定义函数,直接使用的,比如:

xxx.onclick = funckton (){}

var obj = { fn: funciton ()  {} }

xxx.forEach(funciton(){})

setTimeout(funciton () {})

var fn = funciton () {}

...

二、何为箭头函数

在写函数表达式时,省略 funciton 不写,在()和{}之间,加个箭头,就叫箭头函数

使用箭头函数改写上面五个例子,如下:

xxx.onclick = () => {}

var obj = { fn: () => {} }

xxx.forEach(() => {})

setTimeout(() => {})

var fn = () => {}

...

三、箭头函数特殊情况

1)形参有且只有一个的时候,可以不写()

比如:

var fn3 = (a) => {
    console.log('hi world3');
}

可以写为:

var fn3 = a => {
    console.log('hi world3');
}

2)代码只有一句话时,可以不写{},并且自动把这一句话的结果当做函数的返回值

比如:

var fn4 = (a, b) => {
    return a + b
}

可以写为:

var fn4 = (a, b) =>  a + b

3)箭头函数内没有 arguments

这样写会报错:

var fn5 = () => {
    console.log(arguments);
}

要使用默认写法:

var fn5 = function () {
    console.log(arguments);
}

4)箭头函数内没有this,如果用了this,调用的是外部作用域的this

OK,结束~

TAG: ES6 箭头函数
展开