Javascript 未定义还是布尔值?
我有一段代码看起来有点像这样(在JavaScript中): 为了获得相同的效果,我有另一个可用的选项,但它以一种奇怪的方式使用了Javascript 未定义还是布尔值?,javascript,boolean,undefined,Javascript,Boolean,Undefined,我有一段代码看起来有点像这样(在JavaScript中): 为了获得相同的效果,我有另一个可用的选项,但它以一种奇怪的方式使用了undefined // When an specifc event occurs: var panelAvailible; // Later in the code... if (panelAvailible !== undefined) { ... } 我在使用undefined编写时的想法是,除非必要,否则我不需要定义另一个变量,而且代码更短 这段代码会被认为是
undefined
// When an specifc event occurs:
var panelAvailible;
// Later in the code...
if (panelAvailible !== undefined) {
...
}
我在使用undefined编写时的想法是,除非必要,否则我不需要定义另一个变量,而且代码更短
看起来你喜欢正式的解决方案。以下是您的问题的正式答案: 这段代码会被认为是一个丑陋的黑客,还是可以在日常编程中使用 它们都不是黑客——您使用的是定义良好的编程语言行为 哪种变化解释得更快
这没关系。您不需要两次声明变量-在第一次声明中使用
var
一次。“哪种变化解释得更快?”——马特里不认为速度是个问题。您发布的第二个代码块没有问题。然而,在第一个代码块中,在定义了一次“var”之后,不需要再次指定它,我看不出这两个示例之间的区别。或者在第一段代码中是panelAvailable
一个单独变量存在的标志?那么在第二段代码中如何更改panelAvailible
的值呢?你为什么省略了它?@zerkms他们做同样的事情,他们的想法是使用哪一个。
// When an specifc event occurs:
var panelAvailible;
// Later in the code...
if (panelAvailible !== undefined) {
...
}