首页 > 解决方案 > Javascript 真实条件未检测到布尔值

问题描述

我有这部分代码:

   let values = true;

let msg = 'message1';
        if(values) {let msg = 'message2';}

        console.log(msg);

而且我在控制台日志中总是有message1 。

据我所知,if(values)对于任何真实值,包括真、任何非零数、任何非空字符串值、任何对象或数组引用等,都应该满足 if 语句...

那么为什么它不起作用呢?

标签: javascriptconditional-statements

解决方案


声明没有问题if。它运行正确,但问题是您msg再次定义了变量let msg = 'message2';

那应该被替换,msg = 'message2'它将起作用。

let values = true;

let msg = 'message1';
if(values) {
  msg = 'message2';
}
console.log(msg);


推荐阅读