公司二开遇到一段代码大概是酱紫:
if(“我是字符串”==0){
do one …
} else {
do two …
}
结果是do one了。。
什么原因???
果断度娘一波,
解决方案的话就是:
== 改为 ===, 则不会有问题
原Yin:
用双等号进行比较时,如果等号左右任意一边有数字类型的值,就会把另一个值转化为数字,然后进行比较。
这样的话,如果是纯字符串或者NULL时,会转化为0进行比较。
同样,大小于号也和等号一样,比较时可能出现不正确的结果
公司二开遇到一段代码大概是酱紫:
if(“我是字符串”==0){
do one …
} else {
do two …
}
结果是do one了。。
什么原因???
果断度娘一波,
解决方案的话就是:
== 改为 ===, 则不会有问题
原Yin:
用双等号进行比较时,如果等号左右任意一边有数字类型的值,就会把另一个值转化为数字,然后进行比较。
这样的话,如果是纯字符串或者NULL时,会转化为0进行比较。
同样,大小于号也和等号一样,比较时可能出现不正确的结果