JavaScript中数字类型、条件判断相关问题
最近刷题的时候遇到很多涉及到字符和Number类型的问题,这里主要说下遇到的Number问题:
- 1 数字类型的0在判断的时候是否,一般的时候都能注意到,但是注意判断的时候的处理,我觉得比较好的办法是判断的时候就别判断数字类型的东西,判断字符类型,这样就能避免这个问题。例如下面代码中只输出’0’,a
if (0){
console.log(0)
}
let a = '0';
if (a) { //a '0'
console.log(a, 'a')
}
let b;
if (b) { //b undefined
console.log(b, 'b') - 2 NaN和任何其它值比较都不相等,包括其它的NaN,这样可以用来判断存在值与否,如果undefined-‘0’后是NaN,这样就能判断当前是否存在例如:
if (version1[i] - '0' > version2[i] - '0') { //如果有一个为undefined其结果就为NaN,就不进入if中
return 1
}