搜索文档
语法
javascript
let sum = (num1,num2) => {
return num1 + num2;
}特点
this 是静态的,this 始终指向函数声明时所在作用域下的 this 的值。
javascriptlet stu = { name: '李四', getAge(){ console.log(this); }, getName: () => { console.log(this); } } stu.getAge(); stu.getName();
剪头函数不可以作为构造函数实例化对象
javascriptlet Person = function(name,age){ this.name = name; this.age = age; } let Student = (name,age) => { this.name = name; this.age = age; } let per = new Person('张三',21); console.log(per); let stu = new Student('张三',21); // 报错
不能使用 arguments 变量
javascriptlet fun1 = function(){ console.log(arguments); } let fun2 = () => { console.log(arguments); } fun1(1,2,3); fun2(4,5,6); // 报错
缩写
当函数只有一个参数时,参数两侧的小括号可以省略。
javascriptlet add = e => { return e + e; }当函数体只有一条语句时,大括号可以省略,这条语句的运算结果会作为函数的返回值返回,不用写 return。
jslet add = e => e + e; console.log(add(10)); // 打印 20
使用场景
适用于与 this 无关的回调中,如:计时器等。
