var与let、const的区别
1,var声明变量存在变量提升,let和const不存在变量提升
console.log(a); // undefined ===> a已声明还没赋值,默认得到undefined值
var a = 100;
console.log(b); // 报错:b is not defined ===> 找不到b这个变量
let b = 10;
console.log(c); // 报错:c is not defined ===> 找不到c这个变量
const c = 10;
2,let、const都是块级局部变量
{
let a = 1
}
console.log(a) // undefined
3,const 的特性和 let 完全一样,不同的只是
1)const声明时候必须赋值
2)const只能进行一次赋值,即声明后不能再修改
3)const如果声明的是复合类型数据,可以修改其属性
4,同一作用域下let和const不能声明同名变量,而var可以
除了基本数据类型number、string、boolean、null、underfined以外,都是复合类型 常用的如:Array(数组)、Object(对象)、Date(日期)、Math(数学式)、RegExp(正则表达式)、function(函数)
什么是变量提升?
JavaScript 中,函数及变量的声明都将被提升到函数的最顶部。 JavaScript 中,变量可以在使用后声明,也就是变量可以先使用再声明。
本文详细解析JavaScript中var与let、const的差异,包括变量提升、块级作用域、常量特性以及复合类型限制。重点讲解了变量声明时机、不可修改性以及在声明和复用上的区别。
1万+

被折叠的 条评论
为什么被折叠?



