let const var 区别

94 阅读1分钟

image.png let
1使用let关键字声明的变量才具有块级作用域 var关键字是不具备这个特点的 块级作用域的好处 防止外部的变量覆盖内部的变量 防止循环变量变成全局变量
2没有变量提升
3具有暂时性死区
const(使用const关键字声明常量)
1使用const声明的常量有块级作用域
块级作用域的好处 防止外部的变量覆盖内部的变量 防止循环变量变成全局变量
2使用const关键字声明的常量必须赋初始值
3作用 声明常量 常量就是值 (内存地址) 不能变化的量
常量赋值后不可修改(值对应的内存地址) 分两种情况 简单数据类型 报错 复杂数据类型 内部的值可以更改 但是如果直接重新赋值就会报错

image.png

image.png

代码会报变量没有被声明的错误

image.png

image.png