Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/410.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 为什么变量初始化为未定义的eventhough块未执行?_Javascript - Fatal编程技术网

Javascript 为什么变量初始化为未定义的eventhough块未执行?

Javascript 为什么变量初始化为未定义的eventhough块未执行?,javascript,Javascript,可能重复: 变量“you”初始化为undefined,打印时显示undefined而不是reference error。为什么?在Javascript中,所有变量都被“提升”到它们声明的函数/作用域的顶部。也就是说,您的代码在编译器看来确实是这样的: var flag = false; var you; if (flag === true) { you = "great" } var flag = false; var you; if (flag === true) { yo

可能重复:


变量“you”初始化为undefined,打印时显示undefined而不是reference error。为什么?

在Javascript中,所有变量都被“提升”到它们声明的函数/作用域的顶部。也就是说,您的代码在编译器看来确实是这样的:

var flag = false;
var you;
if (flag === true)
{
    you = "great"
}
var flag = false;
var you;
if (flag === true)
{
    you = "great"
}