在 JavaScript 中 let 语句声明一个块级作用域的本地 变量,并且可选的将其初始化为一个值。
let var1 [= value1] [, var2 [= value2]] [, ..., varN [= valueN]];
参数 | 描述 |
---|---|
var1, var2, …, varN | 变量名。变量名可以定义为任何合法标识符。 |
value1, value2, …, valueN | 变量的初始值。可以是任意合法的表达式。 |
let 允许你声明一个作用域被限制在块级中的变量、语句或者表达式。与 var 关键字不同的是, var 声明的变量只能是全局或者整个函数块的。 var 和 let 的不同之处在于后者是在编译时才初始化。
就像 const 一样,let 不会在全局声明时(在最顶部的范围)创建 window 对象的属性。
let 声明的变量只在其声明的块或子块中可用,这一点,与 var 相似。二者之间最主要的区别在于 var 声明的变量的作用域是整个封闭 函数。
使用 let 声明变量
<!DOCTYPE html>
<html>
<head>
<title>JavaScript let</title>
<script type="text/javascript">
console.log("嗨客网(www.haicoder.net)");
let x = 1;
if (x === 1) {
let x = 2;
console.log("x =", x);
}
console.log("x =", x);
</script>
</head>
</html>
程序运行后,控制台输出如下:
我们首先使用了 let 声明了一个全局变量 x 并赋值,接着,我们在 if 判断 里面再次使用 let 声明了一个同样的变量 x,并赋值为 2。
在 JavaScript 中 let 语句声明一个块级作用域的本地变量,并且可选的将其初始化为一个值。