在 JavaScript 中声明和初始化变量有什么区别?

javascriptweb developmentfront end technology

ECMAScript 规范中关于变量声明和初始化的内容如下 −

var 语句声明作用域为正在运行的执行上下文的变量环境的变量。Var 变量在实例化其包含的词法环境时创建,并在创建时初始化为未定义。[...] 由带有初始化器的变量声明定义的变量在执行变量声明时被赋予其初始化器的赋值表达式的值,而不是在创建变量时。

以上定义了差异:

  • 所有变量都使用未定义的值进行初始化。
  • 变量声明在初始化其词法环境时使用未定义的值进行初始化。
  • 此初始化不能用作赋值。

相关文章


有用资源