var let const的区别

时间:2023-12-22 22:49:14
1. 变量提升: 浏览器在运行代码之前会进行预解析,不论var声明的变量处于当前作用域的第几行,都会提升到作用域的头部。
2. 只要块级作用域内存在let命令,它所声明的变量就“绑定”这个区域,不再受外部的影响。
3. let不允许在相同作用域内,重复声明同一个变量。
     var a = 10;                 let a = 6;
     var a = 20;                 let a = 8;
     console.log(a);//20         console.log(b); //报错Uncaught SyntaxError
4.const定义的变量不可以修改,而且必须初始化。
    const a = 2;//正确2
    const a;//错误,必须初始化
5.let/const是使用区块作用域;var是使用函数作用域