最近在
JavaScript中我已经养成了使用习惯
if(data !== "")
检查数据是否为空|| undefined ||空白字符串.
当我尝试使用
if(data !== null) //work here
Resharper向我抛出了一个可怕的错误
“qualifier can be null or undefined”
我的问题是:这是一个ReSharper错误还是背后有什么东西?
解决方法
简而言之,当var没有指向任何地方时,var为null.
另一方面,等于“”的var是指向包含空字符串的变量的已定义var.这本质上是不同的.
另一方面,等于“”的var是指向包含空字符串的变量的已定义var.这本质上是不同的.
[编辑]
正如@jfriend00正确指出的那样,null是javascript中的特定值.区别在于null是与“”不同的值,“”是一个空字符串,因此不是null.
未初始化的var的正确值是未定义的.