今天被问到var,let,const三者的区别了,var,let用来声明变量,可改变,const用来声明常量,不可修改
1.var的特点
var声明的变量会提升到当前作用域的顶部,可重复赋值,可重复声明,
2.let的特点
let声明的变量不会提升,提前使用会报错,会形成块级作用域
console.log(a); // undefined
var a = 100;
console.log(a); // 报错
let a = 100;
let声明的变量不可重复声明
let a= 222;
let a= 222;
console.log(a); // 报错
let声明的变量只在自己当前的作用内有效
var num = 1;
if(false == false){
var num = 2;
}
console.log(num); // 2
let n = 1;
if(false == false){
let n = 2;
}
console.log(n); // 1
3.const的特点
const一般用来声明常量,不可重复声明,不可多次赋值,也会形成块级作用域。