Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/apache-kafka/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 typeof如果不';不存在或不存在_Javascript_Scope - Fatal编程技术网

Javascript typeof如果不';不存在或不存在

Javascript typeof如果不';不存在或不存在,javascript,scope,Javascript,Scope,我有这个密码 if(typeof foo == "undefined"){ foo = "bar"; } 在全球范围内。 我知道当我们得到一个变量的引用时,解释器会检查它是否已经声明,如果没有,它会创建一个新的变量。 现在在这个示例代码中,表达式 typeof foo == "undefined" 将创建具有未定义值的foo 或 将创建变量foo?您只需在控制台中运行上述代码 它确实创建了全局foo=“bar”如果它是第一次运行,那么从已经创建foo的下一次开始,它就不满足条件 Ch

我有这个密码

if(typeof foo == "undefined"){
    foo = "bar";
}
在全球范围内。 我知道当我们得到一个变量的引用时,解释器会检查它是否已经声明,如果没有,它会创建一个新的变量。 现在在这个示例代码中,表达式

typeof foo == "undefined"
将创建具有未定义值的foo 或


将创建变量foo?

您只需在控制台中运行上述代码

它确实创建了全局
foo=“bar”如果它是第一次运行,那么从已经创建foo的下一次开始,它就不满足条件

Chrome控制台输出:


似乎typeof foo不会创建变量。@DragneelFPS:请检查是否确实定义了全局foo。如果是这样,它就不会运行了。第二次等等。我已经在控制台上对此进行了测试。是的,第一次创建了一个全局foo。连续迭代将使循环失败。但我的实际问题是,
typeof foo
是否创建变量或not@DragneelFPS:typeof不创建新变量,但如果foo未定义,则foo=“bar”将创建新变量。
    foo = "bar";
>if(typeof foo == "undefined"){
    foo = "bar";
}
>"bar"