I console.log("var = " + JSON.stringify(result.something));


我得到了var = null

但是当我这样做

if(result.something !=null || result.something != ''){
console.log('enter')
}


它也打印输入。我不知道为什么会这样,我也尝试了result.something!='null',它仍然进入if语句。

最佳答案

您的变量为空,原因如下:

 1. (result.something !=null) : returns false

 2. (result.something != '')  : returns true


由于您使用了OR运算符,因此如果任一条件为true,则程序控制将进入if块内。

当您的第二个条件评估为true时,它进入了if块内部。

从javascript MDN:


  null:“空值”,即不存在对象值


空值不同于空字符串。所以类似if(null ==== " ")的东西会返回false

09-09 22:05
查看更多