1.定义一个函数
之前定义函数的方式:
let fn = function(){}
现在定义函数的方式:
let fn =()=>{}
小括号里面写形参,花括号里面写函数体
2.箭头函数构造的函数,this始终是指向函数声明时所在作用域下的this
function getName(){
console.log(this.name);
}
let getName2=()=>{
console.log(this.name);
}
//设置window 对象的name属性
window.name='高中';
const school = {
name:'XXX中学'
}
getName.call(school);
getName2.call(school);
getName2的this依旧指向块级作用域里面的this,即window
3.不能作为构造实例化对象
let Person = (name,age)=>{
this.name=name;
this.age=age;
}
let me =new Person('xiao',30);
console.log(me);//报错
4.不能使用arguments变量
let fn=()=>{
console.log(arguments);
}
fn(1,2,3);
5.箭头函数的简写
1)省略小括号,当形参有且只有一个的时候
let add = n=>{
return n + n;
}
console.log(add(9));
2)省略花括号,当代码体只有一条语句的时候(return也省略)
let pow =(n)=>n*n;
console.log(pow(9));