ES6新增语法

 ES6的语法规范
一、定义变量的关键词
   1、let
    <1> 特点:
      (1)定义的变量名称不能重复
      (2)定义的变量会像forEach()循环类似会建立独立的相互之间不影响的
      (3)定义在{}和循环中的变量 只能在{}和循环中使用
    <2> 使用:
      (1)定义基本数据类型   
         (2)在循环中使用 定义循环变量
  2、const
    <1> 特点:
      (1)定义的变量名称不能重复
      (2)定义的数不能被改变
      (3)定义在{}和循环中的变量 只能在{}和循环中使用
    <2> 使用:
       定义引用数据类型 定义常量
  3、总结:
          let    多用于定义 基本数据类型 以及 循环中
          const  多用于定义 引用数据类型
          特点:
      定义的变量名称不能重复
            在 { } 和 循环中定义,只能在 { } 和 循环中使用
            let会建立独立的,存储不同的,相互不冲突数据的变量
            const定义的变量,不能重复赋值,不能修改存储的数据
二、箭头函数
  1、三种形式:
    (1)function(){}        ===  ()=>{}  箭头函数
    (2) function(e){}       ===  e=>{}  箭头函数
    (3) function(){一行代码} ===  ()=>一行代码  箭头函数
  2、特点:
    <1> this指向与一般的function函数不同
       (1)声明式  function  fun(){}  this指向是 window
       (2)赋值式  var fun = function(){}  this指向是 window
       (3)forEach()循环   this指向是window
       (4)定时器,延时器 setInterval(function(){} , 时间) this指向是window
       (5)对象中的函数  const obj = {fun:function(){}}  this指向是obj对象
       (6)事件处理函数  标签.addEventListener(事件类型,function(){})  this指向是标签对象
     <2> 函数的this指向是父级程序的this
      如果父级程序有this指向 指向的就是父级程序的this指向
      如果父级程序没有this指向 (对象,数组是没有this)指向的是window
    <3> 箭头函数 无法改变this指向
三、改变this指向
    <1> 函数.call(参数1,其他参数)
      (1)立即执行函数,并且改变函数的this指向为参数1表啊hide内容
      (2)其他参数是原始函数的实参 多个实参用使用逗号间隔
    <2>函数.apply(参数1,[数组参数])
      (1)立即执行函数并且改变函数的this指向为参数1表示的内容  
      (2)数组参数 是原始函数的参数 多个参数以数组的单元的形式存储
    <3>函数.bind(参数1)
      (1)不会立即执行函数 而是生成一个新的函数  新函数参数 程序内容 都与原始函数相同  只是this改变为参数1表示的内容
四、解构
     <1>数组的解构
       将数组的数值 一一对应的赋值给变量
         let[变量1,变量2,变量3] = [1,2,3];
    <2>多维数组的解构
      let[变量1,变量2,[变量3,变量4,变量5]] = [1,2,[a,b,c]];
    <3>对象的解构
       按照定义的属性 从对象中获取数据 赋值给定义的属性  属性就是定义的变量名称
        let{属性} = 对象
      按照定义的属性 从对象中获取数据 赋值给定义的别名  别名是定义的变量名称
        let{属性.别名} = 对象
     <4>多维对象解构
       let{属性:{属性:别名}} = {属性:{属性:数据}}
五、合并 展开运算符  ...
    <1>定义在形参中
       function(...arr)
      将所有的实参都已数组单元的形式存储在形参中
      可以通过操作数组的方法来获取实参
     <2>定义在实参中 function(形参1,形参2,形参3){}  fun(...数组)
      将数组中的数据展开 一一对应的赋值给形参
    <3>普通函数 function 中有JavaScript专门定义好的变量 arguments
      如果没有定义形参 arguments 会以数组的形式来存储所有的实参
     <4>箭头函数中 没有 arguments 变量
       要想以数据的形式存储实参必须使用合并运算符

猜你喜欢

转载自www.cnblogs.com/zsr0328/p/12723559.html