无法将字符串转换为布尔值

Can't convert string to boolean

我正在尝试使用 ini 解析 ini 文件。但是,我无法将我的 string 值转换为 boolean,我想我快疯了!

我已经尝试了下面列出的显而易见的 variable = (value == 'true'); 方法:

    let myBool;
    for (const [key, value] of iniObject) {
        console.log(`pair: ${key} - ${value}`);
        if(key == 'testBool') {
            myBool = (value == 'true');
            console.log(`myBool set to ${myBool} (${typeof myBool}) - value: ${value}`);
        }
    }

不是将myBool设置为true,而是设置为false! console.log() 输出如下,表明输入 value 确实是“真”:

    [1] pair: testBool - true
    [1] myBool set to false (boolean) - value: true

我也尝试过以下方法但没有成功:

    myBool = (JSON.parse(value) == 'true');
or
    myBool = (value == 'true') ? true : false;

ini中对应的行是testBool=true,所以没什么特别的。 我错过了什么?过去 3 个小时都花在这上面,我觉得自己像个白痴,所以我 真的 感谢一些帮助。

感谢您的宝贵时间!

我不知道 ini 是如何工作的,但是你检查过 value 的类型吗?

也许它已经将它解析为布尔值,这就是为什么你在比较时得到 false 的原因?

"true" == true // false