javascript – 为什么!==“”不等于!== null

前端之家收集整理的这篇文章主要介绍了javascript – 为什么!==“”不等于!== null前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
最近在 JavaScript中我已经养成了使用习惯
if(data !== "")

检查数据是否为空|| undefined ||空白字符串.

当我尝试使用

if(data !== null)
   //work here

Resharper向我抛出了一个可怕的错误

“qualifier can be null or undefined”

添加了一个jFiddle只是为了澄清:JsFiddle

我的问题是:这是一个ReSharper错误还是背后有什么东西?

解决方法

简而言之,当var没有指向任何地方时,var为null.
另一方面,等于“”的var是指向包含空字符串的变量的已定义var.这本质上是不同的.

[编辑]
正如@jfriend00正确指出的那样,null是javascript中的特定值.区别在于null是与“”不同的值,“”是一个空字符串,因此不是null.

未初始化的var的正确值是未定义的.

猜你在找的JavaScript相关文章