布尔对象与原始类型
布尔对象是只代表真或假的布尔原始值的对象。不要与真值和假值相混淆,它们都是布尔原始类型。
语法
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