有时候我们在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,结果这个参数没有传进去,于是造成了程序的错误。