无法将字符串转换为布尔值
Can't convert string to boolean
我正在尝试使用 ini
解析 ini 文件。但是,我无法将我的 string
值转换为 boolean
,我想我快疯了!
我已经尝试了下面列出的显而易见的 variable = (value == 'true');
方法:
- How can I convert a string to boolean in JavaScript?
- Converting string "true" / "false" to boolean value [duplicate]
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
我正在尝试使用 ini
解析 ini 文件。但是,我无法将我的 string
值转换为 boolean
,我想我快疯了!
我已经尝试了下面列出的显而易见的 variable = (value == 'true');
方法:
- How can I convert a string to boolean in JavaScript?
- Converting string "true" / "false" to boolean value [duplicate]
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