学习javascript Boolean对象基础知识

144 阅读2分钟

布尔对象与原始类型

布尔对象是只代表真或假的布尔原始值的对象。不要与真值和假值相混淆,它们都是布尔原始类型。

语法

new Boolean(optional value)

可选值是可选的,如果布尔对象的第一个参数是空、0、NaN、未定义、null、false,则包含默认值,布尔对象的初始值为false。如果布尔对象的参数值是'false',任何对象,布尔对象都持有真值

创建布尔型假值的不同方法

以下对象返回假值

  
var emptyBoolean = new Boolean();  
var zeroBoolean = new Boolean(0);  
var nullBoolean = new Boolean(null);  
var emptyString = new Boolean('');  
var undefinedBoolean = new Boolean(undefined);  
var nanBoolean = new Boolean(NaN);  
var falseBoolean = new Boolean(false);  

创建布尔对象真值的不同方法

下面的对象返回真值

  
var falseStringBoolean = new Boolean('false');  
var trueBoolean = new Boolean(true);  
var zeroBoolean = new Boolean('stringa');  
var zeroBoolean = new Boolean({});  
var zeroBoolean = new Boolean(0);

布尔对象的方法 布尔对象继承自Boolean.prototype(),它继承自Object.prototype()全局对象。

  
true.toString(); // returns true  
false.toString(); // returns false  

valueOf()方法 该方法返回布尔对象的原始值

  
boolObject = new Boolean();  
console.log(booleObject.valueOf()); // returns false  

在javascript中把字符串布尔转换为布尔值

我们有很多方法可以转换为布尔值,其中一个方法是使用Json.parse()方法

JSON.parse('true') - returns boolean true  
JSON.parse('false') -  returns boolean false  
Boolean(1).toString(); // true  
Boolean(0).toString(); // false  
var boolVal = Boolean("false");  
var myBoolean = Boolean.parse(boolString);  

布尔对象和布尔原始类型之间的区别

布尔数据类型只有真或假的值。布尔对象和其他对象一样 new Boolean(true), new Boolean(false)

  
var booleanPrimitve= true;  
var otherBooleanPrimitve= true;  
var booleanObj = new Boolean(true);  
var otherBooleanObj= new Boolean(true);  
console.log(booleanPrimitve== otherBooleanPrimitve); // returns true, as both values are equal  
console.log(booleanObj == otherBooleanObj); // returns false - both are different objects  

如何在javascript中把布尔值转换为数字

Number对象有一个构造函数,可以接受布尔值,我们可以很容易地将布尔值转换为Number值

console.log(Number(true)); // returns 1  
console.log(Number(false)); // returns 0  
console.log(Number('true')); // returns NaN as we are passing strings  
console.log(Number('false'));  // returns NaN as we are passing strings