-
函数体超过1行时,需要使用{}
-
函数体不能使用new,即箭头函数不能作为构造函数使用
var add=(a, b=1) => a+b;
console.log(add(3)); //4
效果等同于{}
var add=(a, b=1) => {
return a+b;
}
console.log(add(3)); //4
箭头函数注意事项
- 1. 函数体内this对象就是定义时所在的对象,而不是使用时所在的对象。
var id = 12;
const res = () => {
console.log('id:', this.id);
}
res({id: 450}); //id: 12
//箭头函数导致this总是指向定义生效时所在的对象
- 2. 不可以做构造函数,不能使用new命令
-
3. 不能使用arguments对象,该对象在函数体内不存在。如果要用,可以用rest参数替代。
-
4. 不能使用yield命令,箭头函数不能用作Generator函数。