var:使用var关键字声明的变量是函数作用域的,意味着它们在声明它们的函数内部可见。var声明的变量可以被重新赋值,并且可以在声明之前使用。例如:var x = 5;
function example() {
var y = 10;
console.log(x); // 输出:5
console.log(y); // 输出:10
}
let:使用let关键字声明的变量是块级作用域的,意味着它们在声明它们的块(如if语句、循环等)内部可见。let声明的变量也可以被重新赋值,但不能在声明之前使用。例如:let x = 5;
if (true) {
let y = 10;
console.log(x); // 输出:5
console.log(y); // 输出:10
}
const:使用const关键字声明的变量也是块级作用域的,但是它们是常量,一旦被赋值就不能再修改。const声明的变量必须在声明时进行初始化。例如:const x = 5;
if (true) {
const y = 10;
console.log(x); // 输出:5
console.log(y); // 输出:10
}