ES6 变量17 Mar 2025 | 4 分钟阅读 变量是内存中的一个命名空间,用于存储值。变量的名称称为标识符。在命名标识符时,您应该记住一些规则。这些规则如下:
变量的初始化这是将值存储在变量中的过程。变量可以在使用之前的任何时间初始化。 在ES6 语法中,使用关键字 var 声明一个变量。在 ES5 中,我们这样声明变量 变量声明的有效语法类型以下是一些被认为是有效的变量声明 在ES6中,变量由以下方式声明
let任何使用 let 关键字声明的变量都被分配了块作用域。块作用域 仅仅是一个部分,其中声明了 let 变量,无论它是一个 function{}、一个 block{} 还是一个 全局 (script)。 例如:var v/s let 使用 var 当代码成功执行时,您将获得以下输出 输出 200 让我们尝试使用 let 关键字重写上面的代码 使用 let 输出 SyntaxError: Identifier 'x' has already been declared 当代码成功执行时,您将收到一个错误,即标识符 'x' 已经被声明。因此,任何使用 let 关键字声明的变量都被分配了块作用域。 constES6 提供了一种使用 const 关键字声明常量的新方法。关键字 const 创建对值的只读引用。const 具有以下一些属性 性质
例如 输出 TypeError: Assignment to constant variable. 它将抛出一个错误,因为常量变量是不可变的,不能被重新赋值。 JavaScript 变量作用域在JavaScript中有两个作用域,分别是全局和局部:
示例 以下示例描述了全局和局部作用域 在这个例子中,有两个变量,一个在函数之外(全局作用域),另一个在函数中(局部作用域)。 输出 Outside example() function = 200 Inside example() function = 300 JavaScript 动态类型JavaScript 像 python、perl、ruby 等一样支持动态类型的概念。这是一个特性,您不需要告诉 JavaScript 变量将保存什么类型的值。如果变量的值类型在程序执行期间发生变化,那么它就会被触发,JavaScript 会自动处理它。 ES6 和变量提升提升是 JavaScript 的默认行为,即将所有声明移到当前脚本、当前函数或当前作用域的顶部。它允许您在声明之前使用变量。JavaScript 只会提升变量声明,而不会提升变量初始化。 例如 JavaScript 声明被提升 上面的代码不会给出声明错误,而是会成功执行并显示所需的输出。发生这种情况是因为提升的概念。让我们看看代码在编译阶段会发生什么。 当上面的代码处于编译阶段时,它将被视为 在编译阶段 输出 10 JavaScript 初始化未被提升1. 当您在使用变量之前初始化它时 在编译阶段 输出 100 200 II. 当您在使用变量之后初始化它时 让我们看看当这段代码处于编译阶段时会发生什么。 当这段代码在编译中时,它将被视为如下 在编译阶段 当您执行此代码时,您将获得以下输出,其中 y 的值为 undefined。 输出 100 undefined 发生这种情况是因为提升不允许我们在使用后移动变量的初始化到顶部。 下一个主题ES6 运算符 |
我们请求您订阅我们的新闻通讯以获取最新更新。