Avatar ·

如何在JavaScript中正确地将字符串转换为布尔值?

大家好!我刚开始学习JavaScript,遇到了一个问题。我有一个从服务器或表单传来的字符串,它可能是`"true"`或`"false"`。我需要将其转换为真正的布尔值`true`或`false`,以便在条件中使用。 我试过这样的代码: ```javascript let str = "false"; let bool = Boolean(str); console.log(bool); // 输出 true ``` 但`Boolean("false")`返回`true`!这让我很困惑。我以为字符串`"false"`应该变成`false`。我还试了双重否定: ```javascript let str = "false"; let bool = !!str; console.log(bool); // 也是 true ``` 这也不管用。我明白空字符串`""`会得到`false`,而任何非空字符串都是`true`。但我需要字符串`"false"`(即这个词本身)变成`false`,而`"true"`变成`true`。如何正确实现?JavaScript有内置方法吗?还是需要自己写函数?感谢详细解释。