现在我们来学习一下es6,它现在是一门比较火的语言但是并不是所有的浏览器都兼容E6说的全部特性,
但是我们依旧应该学习一下ES6的语法。
因为兼容性我们得学习一下Babel,它是一个广泛使用的ES6转换器,可以将ES6代码转化为ES5代码,从而在现有环境执行。
变量的声明:
let、const
let的作用域是代码块,它不允许先弹再定义 会报错
{let a=12;alert(a) //let的作用域是代码块  a=12
}alert(a); //因为let的作用域是代码块 a=undefined
alert(a);  //undefinedvar a=12;alert(a);//let不允许先弹再定义  会报错let a=12
不允许重复声明变量 会报错
const声明的是一个常量,一旦被赋值后不允许修改,与let一样,没有预解析功能,会报错
const声明的变量必须有值,必须给初始值,不然会报错
    {const a=12;console.log(a)}alert(a)
  必须给初始值,不然会报错
  for of可以循环数组,但是会出问题,循环不了json
  name指的是一组  键和值  出来之后是数组
  还有一种新的数据类型:Symbol()
  函数箭头:
      window.onload=()=>{var oDiv=document.getElementById("div");
//                oDiv.onclick=()=>{
//                    alert(this);//箭头函数中this指向是window
//                    oDiv.style.background="red";
//                }let show=()=>{oDiv.style.background="blue";}oDiv.onclick=show;let move=(obj="obj必须传递",{}={},options)=>{console.log(obj);};move(1);}
最后解构赋值:
//模式匹配&解构赋值  json 同理var {a=12,b,c}={b:1,c:2};console.log(a,b,c)