ES6let const

    let
const
class 类
import 引入模块
export 暴露接口
//     var a = 10;
//     let b = 20;
//     const c = 30;

     var和let比
     console.log(a) //undefined
     var a = 10;
//     不存在变量提升
     console.log(a) //报错
     let a = 10;
//
     var a = 10;
     var a = 20;
     console.log(a)
////     不允许重复声明
     let a = 10;
     let a = 20;
     console.log(a)
////
     if(true){
         var a = 10;
     }
     console.log(a);
//     let具有块级作用域:花括号就是作用域
     if(true){
         let a = 10;
     }
     console.log(a); //报错
//
     function fn(){
         a = 20;
         var a = 10;
     }
     fn()//不报错

     暂时性死区
     function fn(){
         a = "hello";
         let a = 10; //不允许被赋值
//
     }
     fn() //报错



//     const和let的特点除了一个,其他都一样
     let a = 10;
     a = 20
     console.log(a)
//
////     const保存的固定的内容不是值,而是地址
////     const的变量,不允许地址被修改但是值可以修改。
//
     const a = 10;
     a = 20;
     console.log(a) //报错

demo:修改值而不修改地址
const obj = {name:"admin"} obj.name = "root"; console.log(obj)
原文地址:https://www.cnblogs.com/hy96/p/11431785.html