- 基本语法形式
- 箭头函数最基本的定义方式是
(参数列表) => {函数体}
。 - 例如,定义一个简单的箭头函数,用于计算两个数的和:
let add = (a, b) => { return a + b; }; console.log(add(3, 5));// 输出8
- 箭头函数最基本的定义方式是
- 省略参数括号的情况
- 当箭头函数只有一个参数时,可以省略参数周围的括号。
- 例如,定义一个函数用于将一个数乘以2:
let double = a => { return a * 2; }; console.log(double(4));// 输出8
- 省略函数体括号和
return
关键字的情况- 当箭头函数的函数体只有一条语句,并且这条语句是一个返回值时,可以省略函数体的括号和
return
关键字。 - 例如,上面的
double
函数可以进一步简化为:let double = a => a * 2; console.log(double(4));// 输出8
- 当箭头函数的函数体只有一条语句,并且这条语句是一个返回值时,可以省略函数体的括号和
- 作为对象字面量的方法
- 在对象字面量中,可以使用箭头函数来定义方法。不过要注意箭头函数的
this
指向问题,因为它会继承外部的this
。 - 例如:
let obj = { numbers: [1, 2, 3], doubleNumbers: function() { return this.numbers.map((n) => n * 2); } }; console.log(obj.doubleNumbers());// 输出[2, 4, 6]
- 在对象字面量中,可以使用箭头函数来定义方法。不过要注意箭头函数的
- 作为回调函数
- 在许多JavaScript的高阶函数(如
map
、filter
、reduce
等)中,箭头函数可以作为简洁的回调函数使用。 - 例如,使用
filter
函数和箭头函数来筛选出数组中的偶数:let numbers = [1, 2, 3, 4, 5, 6]; let evenNumbers = numbers.filter((n) => n % 2 === 0); console.log(evenNumbers);// 输出[2, 4, 6]
- 在许多JavaScript的高阶函数(如
- 在函数内部返回箭头函数(闭包)
- 可以在一个函数内部返回一个箭头函数,形成闭包。这种方式可以用于创建一些具有特定功能的函数生成器。
- 例如,定义一个函数,它返回一个箭头函数,用于计算某个数与传入参数的乘积:
function multiplier(factor) { return n => n * factor; } let double = multiplier(2); let triple = multiplier(3); console.log(double(5));// 输出10 console.log(triple(5));// 输出15