如何在 JavaScript 中把一个字符串转换为布尔值

简介: 如何在 JavaScript 中把一个字符串转换为布尔值

[在 JavaScript 中把一个代表布尔值的字符串(例如,truefalse)转换成布尔值]

第一个场景是将代表布尔值的字符串(例如,truefalseyesno01)转换为一个固有类型。我们在特定的情况下使用这种方案,例如我们有 HTML 表单元素和一个隐藏的表单,它是基于用户在检查输入或选择输入中的选择而显示的。

[例子]

<input type="checkbox" id="display_hidden_form1" name="display_hidden_form1" value="true">
<label for="display_hidden_form1"> Display hide form1</label><br>
<input type="checkbox" id="display_hidden_form2" name="display_hidden_form2" value="false">
<label for="display_hidden_form2"> Display hide form2</label><br>
<script>
    let myValue = document.getElementById("display_hidden_form1").value;
    let isTrueval = myValue === 'true';
    let myValue2 = document.getElementById("display_hidden_form2").value;
    let isTrueval2 = myValue2 === 'true';
    console.log({isTrueval, isTrueval2});
</script>

输出:

{isTrueval: true, isTrueval2: false}

[速记例子:输出]

const convertString = (word) =>{
    switch(word.toLowerCase().trim()){
        case "yes": case "true": case "1": return true;
        case "no": case "false": case "0": case null: return false;
        default: return Boolean(word);
    }
}
console.log(convertString("true"));
console.log(convertString("no"));
console.log(convertString("dasdasd"));

输出:

true
false
true

[将字符串转换为布尔值来检查空字符串]

有两种方法可以将变量转换为布尔值. 首先是通过双 NOT 运算符(!!),其次是通过类型转换 (Boolean(value))

let myBool = Boolean("false"); 
let myBool2 = !!"false";  
console.log({myBool, myBool2});

输出:

{myBool: true, myBool2: true}

value 是一个变量。对于 nullundefined0000""false,它返回 false。对于字符串和空格,它返回 true

在上面的例子中,"false"是一个字符串,因此,Boolean("false") 返回 true

对于第一种情况,你可能应该谨慎使用这两种方法,任何不是空字符串的字符串都会通过使用它们来评估为 true

相关文章
|
1月前
|
JavaScript 前端开发
JS几种拼接字符串的方法
JS几种拼接字符串的方法
48 1
|
3月前
|
存储 JavaScript 前端开发
JS上传文件(base64字符串和二进制文件流)
这篇文章介绍了两种JavaScript文件上传的方法:使用FileReader对象将文件读取为base64字符串上传,以及使用FormData对象以二进制文件流的形式上传文件,包括如何处理文件选择、读取和上传的详细代码示例。
446 2
JS上传文件(base64字符串和二进制文件流)
|
2月前
|
JavaScript
js 解析 byte数组 成字符串
js 解析 byte数组 成字符串
68 5
|
3月前
|
JSON JavaScript 前端开发
JavaScript实现字符串转json对象的方法
JavaScript实现字符串转json对象的方法
|
1月前
|
存储 JavaScript 前端开发
JavaScript 字符串(String) 对象
JavaScript 字符串(String) 对象
43 3
|
2月前
|
JavaScript 前端开发
javascript创建字符串
javascript创建字符串
|
2月前
|
JavaScript 前端开发
如何在JavaScript中替换字符串:一篇详细指南
如何在JavaScript中替换字符串:一篇详细指南
|
2月前
|
存储 JavaScript
js切割截取字符串方法
js切割截取字符串方法
46 2
|
2月前
|
Web App开发 JavaScript 前端开发
JavaScript 模板字符串
JavaScript 模板字符串
30 3
|
2月前
|
存储 JavaScript 前端开发
JavaScript 字符串
JavaScript 字符串
22 2