数据类型总结——Boolean类型(布尔类型)

原文

  简书原文:https://www.jianshu.com/p/e5c75d4be636

大纲

  前言
  1、Boolean类型相关概念
  2、Boolean类型的转换
  3、""和“ ”的区别
  4、基本类型和引用类型的布尔值的区别

前言

  数据类型是每一种语言都需要掌握的内容,掌握每一种数据类型的使用是掌握这门语言必不可少的。而我也对数据类型写了一系列的博客,其中包含了对某一数据类型的概念的认识和理解以及常使用的方法。以下就是我对Boolean类型的一些认识和理解,希望能对读者有所帮助。

1、Boolean类型相关概念

  1、Boolean类型只有两个值:true、false。
  2、true和false这两个值和数字0、1是两回事,true不一定就是1,false也不一定就是0。
  3、ECMAScript所有类型都有与这两个boolean值等价的值。

2、Boolean类型的转换

  1、要将一个值转换成对应的boolean值,可以调用转型函数Boolean(), 返回由ToBoolean(value)计算出的布尔值(非布尔对象)。
  2、流程控制语句中的if语句会自动执行Boolean的转换。
  3、不同类型的数据对应的boolean值。

数据类型                      转换成true的值                      转换成false的值
Boolean                           true                                false
String                         任何非空字符串                         “”(空字符串)
Number                         任何非零数值(包括无穷大)               0 和 NaN
Object                         任何对象                                  null
Undefined                                                              undefined

3、""和“ ”的区别

  ""和“ ”是不一样的,前者是空字符串,后者是包含空格的字符串。

var num1 = "";
var num2 = " ";
console.log(Boolean(num1));//false
console.log(Boolean(num2));//true
console.log(num1.length);//0
console.log(num2.length);//false

4、基本类型和引用类型的布尔值的区别

//1、位运算结果不同
var falseObject = new Boolean(false);
var result = falseObject &&  true;
console.log(result);//true
var falseValue = false;
result = falseValue && true;
console.log(result);//false

//2、本质上不同——类型不同
console.log(typeof falseObject);//object
console.log(typeof falseValue);//boolean
console.log(falseObject instanceof Boolean);//true
console.log(falseValue instanceof Boolean);//false

  

猜你喜欢

转载自www.cnblogs.com/shcrk/p/9265597.html