js中的布尔类型转换

2021-07-31  本文已影响0人  绿芽

js中的布尔类型转换

在js中经常会遇到其他类型的值转换为布尔类型的情况,总的来说js中的值可以分为以下两类 :
(1) 可以被强制类型转换为 false 的值
(2) 其他(被强制类型转换为 true 的值)

(1) 可以被强制类型转换为 false 的值

  1) undefined 
  2) null 
  3) false 
  4) +0、-0 
  5) NaN 
  6) "" 

(2) 其他(被强制类型转换为 true 的值)
除了上述可以被转换为false的值其余都会被转换为true,如:

  [], 
  {},
  function(){}; 
  new Boolean( false );  
  new Number( 0 ); 
  new String( "" );  
  "false", 
  "0" , 
   "''" 等等

强制转换为布尔值的方法:

1、使用Boolean(..) 方法进行转换,如:

  var num = 0;
  Boolean(num)  // false

2、使用 !!符号进行转换,如:

  var num = [];
  !![]  // true

3、条件语句中自动进行的强制类型转换,如下:

(1)if (..)语句中的条件判断表达式。
(2)for ( .. ; .. ; .. )语句中的条件判断表达式(第二个)。
(3) while (..) 和 do..while(..) 循环中的条件判断表达式。
(4)? :中的条件判断表达式。
(5) 逻辑运算符 ||(逻辑或)和 &&(逻辑与)左边的操作数(作为条件判断表达式)。
上一篇下一篇

猜你喜欢

热点阅读