hand
_1_11_68
4
返回栏目
0k
2k
1k
2k
1k
1k
1k
2k
2k
2k
1k
2k
1k
2k
1k
1k
1k
1k
1k
2k
1k
1k
1k
1k
1k
1k
1k
1k
1k
2k
1k
1k
1k
1k
1k
1k
1k
1k
1k
2k
1k
1k
1k
1k
1k
1k
1k
2k
1k
2k
1k
1k
1k
1k
1k
1k
1k
2k
2k
1k
1k
1k
2k
1k
1k
2k
2k
1k
1k
1k
2k
1k
1k
2k
2k
1k
2k
1k
1k
2k
2k
2k
3k
3k
2k
3k
2k
3k
3k
3k
1k
2k
3k
2k
2k
3k
3k
2k
2k
6k
3k
2k
2k
5k
3k
4k
3k
3k
2k
4k
3k
3k
2k
3k
3k
1k
4k
4k
4k
2k
5k
3k
2k
3k
4k
3k
3k
4k
2k
3k
3k
4k
2k
2k
3k
4k
3k
3k
2k
5k
2k
3k
3k
3k
3k
2k
3k
3k
3k
2k
2k
2k
2k
3k
2k
2k
2k
3k
2k
2k
2k
2k
2k
2k
0.1k
0.2k
3k
2k
3k
2k
0.1k
2k
2k
4k
2k
2k
1k
2k
2k
3k
3k
3k
3k
2k
2k
3k
3k
3k
4k
3k
3k
4k
3k
2k
2k
3k
3k
3k
3k
3k
3k
2k
3k
3k
4k
4k
3k
3k
2k
2k
3k
2k
2k
1k
2k
3k
1k
2k
2k
2k
2k
2k
2k
2k
2k
2k
4k
2k
3k
2k
1k
2k
2k
2k
2k
2k
3k
2k
3k
1k
2k
2k
2k
0k
2k
2k
2k
2k
2k
2k
2k
3k
2k
2k
1k
1k
3k
2k
3k
1k
2k
1k
2k
2k
2k
2k
3k
1k
3k
2k
2k
2k
2k
2k
2k
1k
2k
2k
4k
3k
3k
2k
2k
2k
2k
2k
2k
4k
3k
3k
3k
2k
2k
2k
2k
2k
2k
3k
4k
返回前端 - Javascript栏目
作者:
贺及楼
成为作者
更新日期:2025-02-21 17:26:00
在 JavaScript 的世界里,有许多内置对象,其中 Boolean 对象扮演着一个独特而有趣的角色。它是布尔值的包装对象,今天就让我们一起来揭开它的神秘面纱。
在 JavaScript 中,布尔值只有两个:true
和 false
。而 Boolean 对象则是用来包装这两个布尔值的对象。我们可以通过 new Boolean()
构造函数来创建一个 Boolean 对象。
// 创建一个值为 true 的 Boolean 对象
let trueObj = new Boolean(true);
// 创建一个值为 false 的 Boolean 对象
let falseObj = new Boolean(false);
console.log(trueObj); // 输出: [Boolean: true]
console.log(falseObj); // 输出: [Boolean: false]
虽然 Boolean 对象看起来和普通的布尔值很相似,但它们之间还是有一些重要的区别。
普通的布尔值是基本数据类型,而 Boolean 对象是引用数据类型。我们可以通过 typeof
运算符来验证这一点。
let normalTrue = true;
let booleanObj = new Boolean(true);
console.log(typeof normalTrue); // 输出: boolean
console.log(typeof booleanObj); // 输出: object
在进行布尔判断时,普通布尔值直接根据其值(true
或 false
)来判断,而 Boolean 对象只要它存在,就会被视为 true
,即使它包装的是 false
。
let normalFalse = false;
let falseObject = new Boolean(false);
if (normalFalse) {
console.log('普通布尔值 false 不会执行这里');
}
if (falseObject) {
console.log('Boolean 对象即使包装的是 false 也会执行这里');
}
valueOf()
方法返回 Boolean 对象包装的原始布尔值。
let trueObject = new Boolean(true);
let originalValue = trueObject.valueOf();
console.log(originalValue); // 输出: true
toString()
方法返回表示该 Boolean 对象的字符串,值为 "true"
或 "false"
。
let falseObject = new Boolean(false);
let stringValue = falseObject.toString();
console.log(stringValue); // 输出: false
对比项 | 普通布尔值 | Boolean 对象 |
---|---|---|
数据类型 | 基本数据类型 | 引用数据类型 |
布尔判断 | 根据值(true 或 false ) |
只要对象存在就为 true |
valueOf() 方法 |
无 | 返回包装的原始布尔值 |
toString() 方法 |
无 | 返回表示对象的字符串("true" 或 "false" ) |
在实际开发中,我们通常更倾向于使用普通的布尔值,因为它们更简单直接,性能也更好。而 Boolean 对象在某些特定的场景下可能会用到,比如需要对布尔值进行一些面向对象的操作时。但一定要注意它们之间的区别,避免因为使用不当而导致的错误。希望通过这篇文章,你对 JavaScript 中的 Boolean 对象有了更深入的了解。
前端 - Javascript
整章节共299节
快分享给你的小伙伴吧 ~