ES6: http://es6.ruanyifeng.com/
x = > x * x 相当于 function(x){return x*x;}
箭头函数的两种格式
1.只包含一个表达式 ,连{ ... }
和return
都省略掉了
2.包含多条语句,这时候就不能省略{ ... }
和return
x = > { if( x > 0){ return x * x; }else{ return -x * x; } }
两个参数: (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;
}
如果奥返回一个对象,,如果是单表达式,这么写报错: x = > {foo:x}
因为和函数体的{...}有语法冲突,所以改为: x=>({foo:x})