js中True、False如何判断

主要总结下js判断0,1,-1,先看结果

js中True、False如何判断

js数字型和布尔型比,会把布尔型转化数字型,true为1,false为0;

那为啥-1也是true呢?

js规定所有的正负整数都是true,只有0是false;

 

js中True、False如何判断

string当作布尔型作比较时,除空字符串是false,其余都是true;

 

从上面我们可以得出,0是false,‘0’是true;

那为什么会出现‘0’ == 0   >>>>true  

js中True、False如何判断

string和数字类型作比较,会把string转为数字

这四点记下来

js数字型和布尔型比,会把布尔型转化数字型

js规定所有的正负整数都是true,只有0是false;

string当作布尔型作比较时,除空字符串是false,其余都是true;

string和数字类型作比较,会把string转为数字

 

关于在js中判断 str.search("string") ,str.indexOf("string"),用到这两个方法的时候加上对数字 -1 的判断。

错误的写法,if(str.search("string") )   if(str.indexOf("string"))

最好的方法是规范好代码 ,避免if(0),if(-1),if(1)这种写法.