var、let 和 const 的区别

1.  var 是函数作用域;let 是块级作用域,{ } 中为块;

2.  变量提升。var 定义的变量会变量提升,比如  console.log(a); // undefined  var a = 1;  而 let 不存在变量提升,反而执行瞬间被称为“暂时性死区”

3. 全局声明。在全局作用域中 var 声明的变量会成为 window 对象的属性,而 let 声明的则不会

4. 条件声明。 由于 var 声明的变量会变量提升,所有重复声明同一变量时,JavaScript引擎会自动将多余的声明在作用域顶部合并为一个声明。而 let 重复声明变量则会报错。

5. for循环中的声明。 var 声明的变量会溢出循环体外部,变成全局变量。而 let 声明的变量则只在循环内部起作用。

6. const 与 let 情况一致,唯一的区别是 const 在声明变量时必须赋初始值,而且不能修改,修改的话会报错。 

posted @   张哲Zeo  阅读(75)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
点击右上角即可分享
微信分享提示