1.普通函数
//普通函数写法
function add(a, b) {
return a + b;
}
2.箭头函数
//箭头函数写法
const add = (a,b) => {
return a+b
}
或者
const add = (a, b) => a + b;
- [ 总结]
- - 没有function 直接通过箭头指向
- 箭头的函数体中只有return,可以省略return
- 参数为一个时,可以没有小括号
- this指向不同(下篇文章详解)
- 箭头函数的this是父级作用域的this
- 普通函数的this指向函数的调用者
- call、apply、bind无法改变箭头的this的指向
- 普通函数可以用作构造函数,可以使用
new
关键字来创建一个实例。箭头函数不能用作构造函数 - *arguments对象:普通函数有自己的
arguments
对象,但箭头函数没有。如果你需要在箭头函数中使用arguments
,你可以使用剩余参数(...args) - 普通函数定义的构造函数内部,支持使用
new.target
,返回构造实例的构造函数。而在箭头函数中,不支持使用new.target
。在浏览器环境中,箭头函数使用new.target
将报错:new.target expression is not allowed here