微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ES6-const,解构赋值,箭头函数

const就是定义的常量,一旦赋值,就不能再改变了
不能重复定义变量
没有变量提升;
不会给window添加属性

解构赋值:
数组解构赋值
(1)前后模式必须匹配(后面的值是什么模式,前面的变量必须是什么模式)
(2)前多后少(前面声明的变量多,后面赋值少,那么解构不成功,没有匹配上的变量就会报undefined)
(3)前少后多(1.省略赋值,用逗号隔开 2.不定参数赋值,...代表扩展运算符,必须写在最后)
(4)带认值的问题(先结构赋值,不再考虑认值;解构成功,就直接赋值,值为undefined,不成功,走认值)
对象结构赋值
(1)变量和属性必须同名,可颠覆
(2)如果解构失败,就是undefined
(3)如果变量跟属性名不一样

等号右边的值只要带有length属性,都可以解构;

函数参数的解构;

参数集合

函数中等号左边是参数,右边是认值;当函数调用不传参时,走函数形参的认值;传参的话认值不走,实参覆盖形参,赋值给左边的参数

在对象中,不传参时,结构不成功,走认值;
实参有值时,赋值给形参,那么解构成功,走实参;
实参为空对象时,解构不成功,为undefined,走认值;

通过参数传值时不考虑认值;
形参就是变量赋值,没有变量提升;
实参没赋值,形参就是undefinded;
当私有作用跟外部有相同变量时,外部变量不能使用;

函数arguments是实参构成的集合;获取方式:扩展运算符


箭头函数
箭头函数只适用于匿名函数/回调函数。如:let a=function(){} 匿名函数 fn(12,function(){}) 回调函数
匿名函数:只要不是关键字function声明的函数都叫匿名函数
let fn=(形参)=>{函数体} 每一个函数结束一定要一个return. 当值有一个参数的时候,可以省略(),中间的形参得用空格隔开

函数体只有一横代码且是return xxx时可以省略{}和return

箭头函数的优势1. 箭头函数没有this指向函数中改变this指向的方向
(1) 在函数前提前对this赋值 that= this
(2) 在函数结尾处{}.bind(this)
(3) 在函数的结尾处{}.apply{this}或者是{}.call{this}
(4) 使用箭头函数

函数的三种角色:类,普通函数,Function的实例对象;

构造函数父类是Function;

所有实例对象的__proto__都指向父类的原型

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐