[英]Does the if false statement always return undefined in javascript?
我目前正在开发一个网站,并计划使用JavaScript。
function func() {
if (false) {
var a = 'goodbye';
}
console.log(a);
}
上面的示例显示了范围,我想知道您如何防止未定义的结果以及为什么会这样。
我已经研究了mdn,w3学校和Varus网站,但它们要么具体,要么太笼统。
这对于那些经常使用JavaScript但不是团队领导者拥有此资源的人来说非常有用-我计划使用此知识来使用前端语言(JavaScript,html,CSS等)制作网页
如果合适,请随时添加更多标签!
当if
的条件为false时看到undefined
的原因是,将var
提升到函数的顶部,并且变量undefined
为其默认值。
吊装后,您的代码如下:
function func() {
var a; // Defaults to `undefined`
if (false) {
a = 'goodbye';
}
console.log(a);
}
由于条件是假的, a
的默认值永远不会改变。
更多关于var
提升我的贫血小博客: 可怜的误解var
您对if语句如何工作感到困惑,
if(Condition comes out to true)
{
This will work
}
否则它将不起作用,默认情况下,您将Condition输入为false,因此不执行if块。 而且,正如您在if块中定义的“ a”一样,变量“ a”也永远不会因为if块未执行而定义。 因此,当您记录一个
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.