如何切换具有 if-else 语句的代码部分?

how do I toggle a part of code that has an if-else statement?

提问人:5pac31nvad3r 提问时间:2/16/2023 更新时间:2/16/2023 访问量:39

问:

如果我有一部分代码,我想打开和关闭,并且我有一行代码可以做到这一点,为什么它不想工作?

let b = Math.floor(Math.random() * 10)
let a = Math.floor(Math.random() * 10)
let x = true
if (x = true) {if (a >= 5) {if (b >= 5) {console.log('test 1'} else {console.log('test 2')}} else {console.log('test 3'} else {console.log('test 4')}

我尝试了类似的东西,但规模更大,比如我尝试制作的游戏可能有 5 个,我希望输出会像“测试 1”一样在控制台中出现,但显示的只是一条错误消息。

javascript if-statement 控制台 语法错误

评论

1赞 Felix Kling 2/16/2023
语法错误。你至少缺少一个。你也想要. 赋值给(就像您之前执行该行一样)。)if (x)x = truex

答:

-1赞 thornfish 2/16/2023 #1

该语句不起作用,因为 Javascript 中的比较运算符是三等号,而您的代码使用单等号。if

此外,您的代码存在一些问题,导致其无法运行。这些将产生错误。

  • 不匹配的括号
  • 无与伦比的卷曲牙套
  • 否则结构不太正确

还有一些不好的问题

  • 缺少分号
  • 格式有点难以阅读

因此,我采取了一些自由并进行了一些重构。您可以在下面看到代码正在执行。希望这对你有用。

window.onload = function(){
    let a = Math.floor(Math.random() * 10);
    console.log(`a = ${a}`);

    let x = true;

    if (x === true) 
    {
        if (a >= 5) {
        console.log('a >= 5');
        } else if (a >= 4) {
          console.log('a >= 4');
        } else if (a >= 3) {
          console.log('a >= 3');
        } else {
          console.log('a is less than 3');
        }
    } else {
        console.log('x is false');
    }
};