2020-8-18es6学习

箭头函数: 1.箭头函数的创建都是函数表达式方式(变量=函数),这种模式下,不存在变量提升,函数只能在创建完成后被执行(也就是创建的代码之后执行)
2.=>形参只有一个,小括号可以不加
const fn=n=>{};
3.=>函数体中只有一句话,并且是return xxx的,可以省略大括号和return等
const fn=n=>n*10;
4.箭头函数中没有arguments,但是可以基于剩余运算符获取实参集合,而且es6中是支持给形参设置默认值的。
5.let obj={};
let fn = (context= window,…args) => {
//console.log(arguments); //Uncaught ReferenceError: arguments is not defined
//箭头函数中没有arguments
//…args:剩余运算符(把除第一项以外的,其他传递的实参信息都存储到args这个数组集合中)
console.log(args);
};
fn(obj,10,20,30); //=>context:obj
fn(); //=>context:window
6.箭头函数中没有自己的this,它所用到的this,都是自己所处上下文中的this(真实项目中,一旦涉及到this指向问题,箭头函数慎用),普通函数是有自己的this
解构赋值 1.let {
age:nianling
} = obj;
console.log(nianling) //79
【注】:=>冒号相当于给获取的结果设置了一个别名(变量名),创建了一个叫做nianling的变量存储了obj.age的值
2.=>给获取的结果设置默认值(没有这个属性走的是默认值)
let {height:‘180cm’} = obj //obj里没有height这个属性,如果不赋值,将打印出undefined
console.log(height)//180cm
…的作用 【2020-8-18es6学习】1.拓展运算符(多用在解构赋值中)
2.展开运算符(多用在传递实参中)
3.剩余运算符(多用在接受实参中)

    推荐阅读