如何在 JavaScript 中把一个字符串转换为布尔值
JavaScript 有不同的方法将一个字符串转换为布尔值,但这要看情况,或者说,要看你将字符串转换为布尔值的目的,因为我们有两种不同的情况,下面我们将介绍。
第一个场景是将代表布尔值的字符串(例如,true
、false
、yes
、no
、0
、1
)转换为一个固有类型。我们在特定的情况下使用这种方案,例如我们有 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
是一个变量。对于 null
、undefined
、0
、000
、""
和 false
,它返回 false
。对于字符串和空格,它返回 true
。
在上面的例子中,"false"
是一个字符串,因此,Boolean("false")
返回 true
。
对于第一种情况,你可能应该谨慎使用这两种方法,任何不是空字符串的字符串都会通过使用它们来评估为 true
。
相关文章
MySQL 中多列的 LEFT JOIN
发布时间:2023/05/08 浏览次数:92 分类:MySQL
-
在这篇简短的文章中,我们将了解如何在 MySQL 中进行左连接,我们还将查看相关示例并逐部分解释,以使主题更容易理解。在 MySQL 中使用 LEFT JOIN
使用 JDBC 连接到 MySQL 数据库
发布时间:2023/05/08 浏览次数:82 分类:MySQL
-
本文讨论 JDBC 以及使用 JDBC 连接数据库的要求。 我们还查看了一个示例,以了解如何实现 Java 代码来连接 MySQL 数据库。MySQL 为使用 Java 编程语言和 MySQL Connector/J 开发的应用程序提供连接。
将 HTML 转换为 JSON
发布时间:2023/05/05 浏览次数:135 分类:HTML
-
本篇文章介绍如何将 HTML 转换为 JSON。使用 JavaScript JSON.stringify() 方法将 HTML 转换为 JSON JSON 类似于 JavaScript 对象,不同的是 key 在 JSON 中被写成一个字符串。
Django 返回 JSON
发布时间:2023/05/04 浏览次数:106 分类:Python
-
在与我们的讨论中,我们简要介绍了 JSON 格式,并讨论了如何借助 Django 中的 JsonResponse 类将数据返回为 JSON 格式。
在 Java 中获取文件大小
发布时间:2023/05/01 浏览次数:139 分类:Java
-
Java 提供了不同的方法来获取文件的字节大小。 本教程演示了在 Java 中获取文件大小的不同方法。使用 Java IO 的文件类获取文件大小 Java IO 包的 File 类提供了以字节为单位获取文件大小的功能。
Java 中的文件分隔符
发布时间:2023/05/01 浏览次数:108 分类:Java
-
本篇文章介绍了 Java 中的文件分隔符。Java 中的文件分隔符 文件分隔符是用来分隔目录的字符; 例如,Unix 使用 /,Windows 使用 \ 作为文件分隔符。
Java 中的文件过滤器
发布时间:2023/05/01 浏览次数:193 分类:Java
-
本篇文章介绍如何在 Java 中使用 FileFilter。FileFilter 用于过滤具有特定扩展名的文件。 Java内置包IO和Apache Commons IO为FileFilter提供了类和接口来进行文件过滤操作。
Java 获取 ISO 8601 格式的当前时间戳
发布时间:2023/05/01 浏览次数:132 分类:Java
-
本篇文章介绍了 ISO 8601 日期格式、其重要性及其在 Java 中的使用。 它还列出了一些优点来强调为什么应该使用 ISO 格式来表示日期。
在 Java 中获取数组的子集
发布时间:2023/05/01 浏览次数:142 分类:Java
-
本篇文章介绍了几种在 Java 中获取数组子集的方法。使用 Arrays.copyOf() 方法获取数组的子集 使用 Arrays.copyOfRange() 方法获取数组的子集