在初始化变量时查询OR操作符

Query about OR operator while inititating a variable

本文关键字:OR 操作符 查询 初始化 变量      更新时间:2023-09-26

让我们假设模块和模块都没有被声明。
现在考虑两个场景:

var modulex = modulesx || {};//这行代码运行良好

moduley = moduley || {};//但是这个代码抛出错误说模块是未定义的。

,

var modulex = moduley || {};//这也抛出错误说模块是未定义的。


在JavaScript中,变量声明是提升的。这段代码:

var a = a || {};

实际上是这样解释的:

var a;
a = a || {};

在您的第二个示例中,moduley只是没有定义,这正是您的错误所说的。

不能使用没有在"="左侧声明的变量或作为函数参数。

由于您的'模块'在使用它之前没有定义,javascript编译器将其称为'undefined'