// 普通函数
function double(n){
return n * 2
}
// 箭头函数
const double=(n)=>{
reutrn n * 2
}
// 当箭头函数只有一个参数和一个语句时,参数括号可以省略,语句花括号可以省略
const double=n=>n * 2
箭头函数的特点:
- 更简洁的语法:箭头函数省略了
function关键字和函数名,直接使用箭头=>来表示函数。 - 不绑定
this:箭头函数不会创建自己的this上下文,它会捕获其所在上下文的this值。这意味着在箭头函数内部,this的值与外部上下文相同,不会出现意外的情况。 - 不绑定
arguments:箭头函数没有自己的arguments对象,它可以使用外部函数的arguments对象。 - 不支持
new操作符:箭头函数不能被用作构造函数,不能使用new操作符来创建对象。 - 没有原型:箭头函数没有自己的原型对象,因此不能通过原型链进行方法的查找。
- 不适合用作生成器函数或迭代器函数。