let fun1 = i => i+i;
刚学前端时,当我第一次看到这样的代码时很懵逼,这什么跟什么?
当我学习ES6的时候,才知道这段曾经让我们摸不着头脑的代码其实是箭头函数的简写。
//原来的函数写法
let fun2 = function(i){
console.log(i*i)
}
//箭头函数写法
let fun1 =(i)=>{ console.log(i+i)}
let num1=fun1(5) //输出10
let num2=fun2(3) //输出9
这样一看,箭头函数是不是就好懂很多,其实就是把“function”变成了=>放在花括号前面,但是开头的那一段代码为什么可以简写成那样呢?
因为当箭头函数的参数只有一个时,可以省略放参数的括号。
let fun1 = i => { console.log(i+i)}
而函数花括号内的代码只有一行时,花括号也可以省去。于是函数就简写成了下面这个样子。
let fun1 = i => console.log(i+i)
差点就看不出这是函数了,怪不得当初我看不懂这段代码呢。