ES6知识汇总

1.let 的特点

  • var 只能通过函数形成函数作用域
  • let 声明的变量存在块级作用域 ,只要在花括号内,外部就访问不了let声明的变量(if switch for 都可以形成局部作用域)
  • let 不能在同一个作用域重复声明同一个变量
  • let定义的变量不存在变量提升(变量提升,var声明的变量会先把变量预编译并赋值为undefined,而let声明的变量不会,如果在声明变量之前访问,就会报错)

  • 存在暂存死区

  • 案例:利用for循环,输出1-10十个按钮,每个按钮单击时,一次打印1-10

    • let 的方法

     2.const声明

  • 特征
    • 1.定义的值一般不能被修改
    • 2.存在作用域,并且只能在当前作用域生效
    • 3.不存在变量提升
    • 4.不能重复定义声明
    • 5.暂存死区
    • 6.当const的值是一个对象的时候,对象的值可以被修改

      • 在之前是怎么定义一个常量
      • 封装一个定义常量的方法
  • 3.引用数据类型的解构

         数组解构

  • 特征
    • 1.定义的值一般不能被修改
    • 2.存在作用域,并且只能在当前作用域生效
    • 3.不存在变量提升
    • 4.不能重复定义声明
    • 5.暂存死区
    • 6.当const的值是一个对象的时候,对象的值可以被修改

      • 在之前是怎么定义一个常量
      • 封装一个定义常量的方法
  • 对象-字符串解构

    • 对象的解构是按键名解构,没有位置,不区分先后,想拿谁就写谁的键名,键名要一致

    • 拓展运算符(和数组差不多)

    • 字符串的解构赋值(和数组一样,按位解构 )

  •  
  • 比较复杂的解构案例

    • 数组-案例1

    • 案例2

    • 对象的案例

      • 对已经存在的变量进行解构
  • 字符串模板: `` (反引号)

    • 字符串模板中引入变量:${变量} 在很多实例中也实用
    • 特点
      • 可以任意换行,标点符号,特殊符号,直接写
  • 箭头函数

    • function(a,b){return a+b}-------(a,b)=>{return a+b} 把function(a,b)转化为(a+b)
      • 当箭头函数的参数只有一个是 () 可以省略
      • 当函数题代码只有一行时 { }可以省略不写 ,注意:如果不加花括号 函数体代表return

      • 注意:箭头函数没有this,保留this关键字

      • 函数的arguments可以获取传入的所有参数,但是箭头函数没有arguments

      • 箭头函数的this指向
        • 箭头函数不能作为构造函数
        • 箭头函数中的this指向的是上一层作用域
      • 函数的默认参,不定参,拓展参
        • 当参数是undefined时候取默认值
        • 并不确定函数的个数时,用不定参
        • 拓展参是实参
  • 字符串的拓展

    • padStart( ) 方法 -----------在字符串前填充某字符串到某长度,如果填充的字符串长度不够,会重头再次开始填充,返回值是新字符串
    • padEnd( ) 方法 -----------在字符串末尾填充某字符串到某长度,如果填充的字符串长度不够,会重头再次开始填充

    • startsWith ( ) startsWith( ) 方法 检测字符串是否以某字符开头,以某字符结尾,区分大小写,返回值是布尔值

    • 判断一个字符串是否包含某字符串
      • 老方法

      • includes( 字符串) 方法: 判断是否包含某字符串,返回值是布尔值
  • 8.数组拓展
    • 利用拓展运算符:. . . ,可以在函数传参时直接传入数组

    • Array.from( ) 方法 :把一个类数组转换为数组
      • 类数组 : 键 是数字+length属性

    • 构建数组
      • 构建方式创建数组,当参数有多个时,每一个都是数组的项,只有一个的话,是数组的长度

    • fill (参数1,参数2,参数3 ) 方法 :以特定内容填充数组 ,
      • 参数1:必填,只有一个参数时,会把原数组的内容全部替换掉,如果原数组有元素,也会被覆盖掉
      • 参数2,参数3 :指定填充的开始位置和结束位置,可以不写

    • includes( )方法:判断是否 包含某个元素

    • keys()打印下标,vlaues()打印数组元素

    • entries 获取每一组键和值

    • find 方法 :根据条件(回调)按顺序遍历数组,当回调函数返回为true时,返回对应的第一条数据

    • findIndex 遍历:根据条件(回调)按顺序遍历数组,当回调函数返回为true时,返回对应的第一条数据的下标

    • map,some filter 方法 ,在数组中已经介绍过
    • parseInt ,parseFloat
    • isNaN:判断是否是一个非数组 isFinte:判断是否是一个数值
    • Number.isSafeInteger 判断一个数值是否是有效数 ,返回值是布尔值

  • 对象新增方法

    • 1.object.create( ) :通过现有对象创建一个新的对象,新对象的原型上有源对象的方法和属性
      • 通常用在继承上
    • 2.object.keys( ) :获取对象所有键的集合成为一个数组
    • 3.object.values( ) : 获取值的集合
    • 4.object.assign( ):合并对象,重复的会取最后一个

  • 对象的简写形式
    • 属性名可以用变量拼接

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值