美文网首页
关于if(xx)和 a==b的判断

关于if(xx)和 a==b的判断

作者: 不想做肥宅的薛小皮 | 来源:发表于2018-08-23 11:10 被阅读0次

if(xx)的判断

对于括号里的表达式,会被强制转换为布尔类型

转换规则是除了下面六个值被转为false,其他值都视为true。
  • undefined
  • null
  • false
  • 0
  • NaN
  • ""或''(空字符串)
if ('') {
  console.log(true);
}
// 没有任何输出

上面代码的if命令后面的判断条件,预期应该是一个布尔值,所以JavaScript自动将空字符串,转为布尔值false,导致程序不会进入代码块,所以没有任何输出。

需要特别注意的是,空数组([])和空对象({})对应的布尔值,都是true。

if ([]) {
  console.log(true);
}
// true
if ({}) {
  console.log(true);
}
// true
课件题目
if ("hello") {
    console.log("hello")
}
//hello
if ("") {
    console.log('empty')
}
// undefined
if (" ") {
    console.log('blank')
}
//blank
if ([0]) {
    console.log('array')
}
//array
if('0.00'){
  console.log('0.00')
}
//0.00

==的判断

运算符原理.png
1 == true // true 
// Number(true) ===1

0 == false // true 
// Number(false)===0 

"" == 0 // true 
//Number('"") === 0  

" " == 0 // ture
//Number(" ") === 0

"" == true  //false
//true代表1

"" == false  //true
//false代表0

" " == true //false
//!优先级大
!" " == true  //false
!" " == false  //true
//空字符串为false,其他都为true

"hello" == true  //false
"hello" == false //false
//"hello"转换成数字是NAN ,不和任何数字相等
 
"0" == true  //false
//"0"转换成数字就是0,true是1
"0" == false  //true
"00" == false  //true
"0.00" == false //true
undefined == null  //true
{} == true  //false
[] == true  //false
var obj = { 
  a: 0, 
  valueOf: function(){return 1} 
} 
obj == "[object Object]"  //false
obj == 1  //true
obj == true  //true

相关文章

  • 关于if(xx)与a==b的判断

    关于if(xx)与a==b的判断 简单介绍下if(xx)和a==b的相关判断 if(xx)的判断 1.if(num...

  • 2019-05-17

    关于if(xx)和 a==b的判断 if(xx)的判断 括号中的xx会被强制转换为布尔类型,true 或者 fal...

  • 关于if(xx)和 a==b的判断

    if(xx) if后的括号里的表达式会被强制转换为布尔类型 number a = 1if(a){console.l...

  • 关于if(xx)和 a==b的判断

    if的判断 1.if(number)if后的括号里的表达式会被强制转换为布尔类型 例:当 if(number),0...

  • 关于if(xx)和 a==b的判断

    if的判断 原理 解密 对于括号里的表达式,会被强制转换为布尔类型 做几道测试题看一看 == 的判断 对于==的判...

  • 关于if(xx)和 a==b的判断

    if条件判断 if...else 条件判断的语法如下: if (条件){当条件为 true 时执行的代码}else...

  • 关于if(xx)和 a==b的判断

    if(xx)的判断 对于括号里的表达式,会被强制转换为布尔类型 转换规则是除了下面六个值被转为false,其他值都...

  • 关于if(xx)和 a==b的判断

    一. if(xx)的判断JavaScript 遇到预期为布尔值的地方(比如if语句的条件部分),就会将非布尔值的参...

  • 关于if(xx)和 a==b的判断

    if(xx)的判断 对于括号里的表达式,会被强制转换为布尔类型 类型 结果 Undefined ...

  • 关于if(xx)和 a==b的判断

    一、if(xx)的判断 对于if括号里的表达式,会被强制转换为布尔类型 当if括号里面的表达式为Boolean时,...

网友评论

      本文标题:关于if(xx)和 a==b的判断

      本文链接:https://www.haomeiwen.com/subject/rucuiftx.html