zoukankan      html  css  js  c++  java
  • 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__都指向父类的原型

  • 相关阅读:
    (转)音频降噪算法 附完整C代码
    (转)移动直播技术秒开优化经验(含PPT)
    React实现简单的SearchBox搜索框组件
    为ARM安卓设备交叉编译C/C++语言程序
    Ubuntu无法用快捷键或图标打开终端
    Java基础系列-SPI你认识吗
    Java基础系列-时间日期API
    Java基础系列-RandomAccess
    Java基础系列-Optional
    那些字段适不适合建索引?
  • 原文地址:https://www.cnblogs.com/lovels/p/11157293.html
Copyright © 2011-2022 走看看