javascript中判断变量时变量值为 0 的特殊情况

  有时候我们在js中会直接判断变量是否存在值,下面列举一些情况:

var a = 0;
var b = 1;
var c = ' ';
var d;

console.log( a ? 1 : null);  //null
console.log( b ? 1 : null);  //1
console.log( c ? 1 : null);  //null
console.log( d ? 1 : null);  //null

  上述情况中我们c,d没有值,所以结果是null,但是a的值是0,结果也是null,这里就涉及到一个特殊的情况,0在javascript的判断中为false,所以这里结果是null,所以我们在平时做变量的判断时要考虑这种情况,以免当变量的值为0时判断出错,之前项目里面的代码就是在这里进行了判断,导致为0的一个变量被赋值成了null,结果这个参数没有传进去,于是造成了程序的错误。

原文地址:https://www.cnblogs.com/wgl1995/p/7070631.html