Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/visual-studio-code/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 未定义还是布尔值?_Javascript_Boolean_Undefined - Fatal编程技术网

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编写时的想法是,除非必要,否则我不需要定义另一个变量,而且代码更短 这段代码会被认为是

我有一段代码看起来有点像这样(在JavaScript中):

为了获得相同的效果,我有另一个可用的选项,但它以一种奇怪的方式使用了
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) {
    ...
    }