Boolean() 函数在对数据进行真值检查时特别有用,并且可能比双重否定 (!!) 操作更具可读性:
- let x = 'some-value';
- // 这看起来不太美观
- if (!!x) {
- // ...
- }
- // 这更具可读性
- if (Boolean(x)) {
- // ...
- }
正如你在上面的例子中所看到的,它的用途完全相同,并且用起来非常简单。同样,由于 Boolean() 本身就是一个返回布尔值的函数,你可以用它来检查集合、过滤数组等:
- const values = [0, 0, 2, 0, 3];
- // 用作 Array.prototype.some() 的回调
- const hasValidValue = values.some(Boolean);
- // 用作 Array.prototype.filter() 的回调
- const nonEmptyValues = values.filter(Boolean);
虽然 Boolean() 函数非常有用,但是会遇到一些关于 Boolean 对象和 new Boolean() 构造函数的问题。Boolean 对象是一个布尔值的对象包装器,但棘手的部分是,作为一个对象,即使包含的值为 false,它也始终为真!
- let x = new Boolean(false);
- if (x) {
- // 这里的代码会执行
- }
例如,上面的代码会考虑 x 为真,即使它明确把 false 作为其值。这可能有些令人困惑,但是如果你不用 Boolean 对象和 new Boolean() 构造函数,就可以轻松避免它,除非你完全确定出于什么原因需要使用它。我找不到任何需要使用它的场景,所以一开始可能并不常见。
分享文章:什么情况下可以使用JavaScript中的Boolean函数
标题URL:http://www.csdahua.cn/qtweb/news43/356343.html
网站建设、网络推广公司-快上网,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 快上网