JS 中 let、var、const 的区别
JS 中 let、var、const 的区别1. const
const 定义的变量必须初始化,不能重复声明。例如,下面的两段代码都是错的:
const a;
console.log(a);
const a = 5;
a = 3;
console.log(a);
const 实际上规定的并不是变量的值不得改动,而是变量指向的那个内存地址不得改动,通过调用变量的方法而改变用 const 定义的变量是可以的。例如:
const a = ;
a.push(3);
console.log(a);
// 输出
2. let
在 ES6 中新增了 let 关键字,可以用 let 定义块级作用域变量。例如:
for (let i = 0; i < 10; i++) {
console.log(i);
}
用 let 声明的变量只在花括号内有效。例如,下面的代码是错误的:
for (let i = 0; i < 10; i++) {
console.log(i);
}
console.log(i); // ReferenceError: i is not defined
和 const 一样,let 定义的变量也不能重复声明,例如,下面的代码是错误的:
let a = 0;
let a = 1; // SyntaxError: Identifier 'a' has already been declared
3. var
var 定义的变量可以修改。例如:
var a = 5;
a += 5;
console.log(a); // 10
页:
[1]