let var const 的区别

let :  
  (ES6新增加的知识点) babel可以把ES6转成ES5
变量: var let  

  区别:var 会进行变量提升, 会在window(全局作用域)下挂属性,不受限于块,可以重复命名
     let 不会变量提升, 在声明的上方有暂存死区,受限于块,不可重复命名
    
let的好处:
1.在同域中不能有2个相同的名字出现(也包括形参),不然就报错
2.不会与window进行映射(不在window上属性)
3.变量声明的上方,有暂存死区(就报错)
4.支持块级作用域,只要有{}都支持块
常用的:
1                 if(){}
2                 for(){}
3                 while(){}
4                 () => {}
5                 switch(){}
6                 function fn(){}
7                 {}

 



常量:const
        1.不可变的量,一变就报错
2.声明之后必须赋值,不赋值就报错
3.不会与window进行映射(不在window上属性)
4.变量声明的上方,有暂存死区(就报错)
5.支持块级作用域,只要有{}都支持块

应用场景:
一般这个值不会变了,就用常量
获取静态元素的时候可以使用

用的是它的一变就报错的特性

1         const num = 500;
2         const lis = document.querySelectorAll('li');

 

 
posted @ 2018-10-28 15:19  真的想不出来  阅读(189)  评论(0编辑  收藏  举报