其他分享
首页 > 其他分享> > if(a==true)?

if(a==true)?

作者:互联网

在看某个坏东西写的花里胡哨的题解的时候发现这样一个判断条件:if(vis[next.x][next.y]==true)

(vis为布尔类型)

我:???这他喵的啥?

然后去搜,发现还有这样几种情况:

1 == true   // true
2 == true   // false
3 == true   // false
1 == false  // false
0 == false  // true

总结一下呢就是这样:

1 == true   // 布尔值会转成number true即为1 所以结果是true
2 == true   // 布尔值会转成number true即为1 所以结果是false
3 == true   // 布尔值会转成number true即为1 所以结果是false
1 == false  // 布尔值会转成number false即为0 所以结果是false
0 == false  // 布尔值会转成number false即为0 所以结果是true

然后,"=="的转换规则:

数字 == 字符串  会转换成  数字 == 数字
数字 == 布尔值  会转换成  数字 == 数字
字符串 == 布尔值  会转换成  数字 == 数字

 

标签:false,数字,布尔值,number,转成,true
来源: https://www.cnblogs.com/marswithme/p/16066588.html