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

if

if条件判断语法如下:

如果(if)判断是正确的就输出上面的console.log(),否则就输出下面的console.log。举例: var = 1

if(a===1){

console.log('ok')
复制代码

}

else{ console.log('no') }

如果a===1的话就输出OK,否则就输出no

然而if条件句中有几种转化类型,需转换成布尔类型:
  • undefined转换成布尔类型是false。

  • null转换成布尔类型是false。

  • Number转换成布尔类型+0,-0或者nan为false,其余为true。

  • object转换成布尔类型是true。

  • string转换成布尔类型空字符串为false,其余都为true。

  • 布尔类型就是布尔。

取反运算符(!):用于将布尔值变为相反值,true变成false,false变成true。

且运算符(&&):如果第一个运算子的布尔值为true,就看第二个。如果都是true则为true。如果第一个就为false就不用看第二个,结果为false。

或运算符(||):如果第一个运算子的布尔值为true,就为true。如果第一个是false,则看第二个,是true。如果第二个为true 结果就是true,否则为false。

a==b的判断

‘=’是赋值 ‘==’是判断,‘===’不仅值相等,类型也要相等。举例:

var a = 1

var b = '1'

alert(a==b)true

alert(a===b)false

字符串1和1,用==就是true,是相等的。但是如果是===绝对相等就是false。 先比较2个变量类型是否一致,不一致返回false,一致时,再比较2个变量的值是否相等

转载于:https://juejin.im/post/5ba369ce5188255c83210b2b

你可能感兴趣的:(关于if(xx)和 a==b的判断)