gpt4 book ai didi

javascript - javascript 中 if false 语句总是返回 undefined 吗?

转载 作者:行者123 更新时间:2023-11-28 12:16:38 25 4
gpt4 key购买 nike

我目前正在开发一个网站并计划使用 JavaScript。

function func() {
if (false) {
var a = 'goodbye';
}
console.log(a);
}

上面的示例显示了范围,我想知道如何防止出现未定义的情况以及为什么会出现这种情况。

我研究过 mdn、w3 学校和各种网站,但它们要么过于具体,要么过于笼统。

对于经常使用 JavaScript 但不是团队领导的人来说,拥有此资源会很棒 - 我计划利用这些知识来使用前端语言(JavaScript、html、CSS 等)制作网页

online-editor

如果合适,请随时添加更多标签!

最佳答案

if 中的条件为 false 时,您看到 undefined 的原因是 var提升 到函数顶部,变量将 undefined 作为默认值。

提升后,您的代码是这样的:

function func() {
var a; // Defaults to `undefined`
if (false) {
a = 'goodbye';
}
console.log(a);
}

由于条件为 false,a 的默认值永远不会更改。

有关 var 提升的更多信息,请参见我贫血的小博客:Poor misunderstood var

关于javascript - javascript 中 if false 语句总是返回 undefined 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48140721/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com