0
点赞
收藏
分享

微信扫一扫

let、const和var区别

niboac 2022-03-30 阅读 43

let、const和var

var:

var可以重复声明,不限制修改,而且没有块级作用域(但有函数作用域)(块级作用域:{}中的作用域就是块级作用域),支持变量提升

let:

let存在块级作用域,而且不可以在统一作用域里重复声明,不支持变量提升

const:

const声明常量,一旦声明常量的值就不能改变(变量指向的是内存地址,内存地址是不能改变的),所以声明的时候必须初始化,且不可以重复声明(const声明的常量建议全为大写)。所声明的常量只在当前块级作用域有效,不支持变量提升。当const声明复合型数据的时候(主要为对象和数组),所以可以改变符合型数据的值。声明常量是保存在栈里的,但声明的复合数据类型是保存在堆里的,但会在栈里声明一个引用,保存堆里的首地址,这个首地址不得改变

举报

相关推荐

0 条评论