JavaScript中是否有类似于string.isnullorempty()的函数?

32
我总是进行(thing != undefined || thing != null)?...:...;检查。在JavaScript或jQuery中,是否有任何方法可以在此检查后返回bool值?
同时,请问你如何将此检查作为一个函数添加到jQuery中?
4个回答

46
if (thing)
{
   //your code
}

这是你要找的内容吗?


2
:) 这确实是非常容易的,不是吗 :D - uzay95
请注意 - 这个字符串和可能还有其他一些字符串将无法通过检查:"0" - Joel Coehoorn
他没有要求“0”和“false”,而是未定义或空值。 - femseks
6
@Joel: 错了。所有非空字符串都是真值。 - SLaks
1
@SLaks 只有在没有比较时才会发生类型转换,因此 if("0") 为真,但 if("0" == true) 不为真。 - Ivo Wetzel
这与 PHP 不同,其中“0”会被评估为假。 - Nick Garvey

25
在JavaScript中,值nullundefined""0NaNfalse都是“falsy”,将无法通过条件语句。
所有其他值都是“truthy”,将能够通过条件语句。
因此,您可以简单地编写thing ? ... : ...

1
尝试这个。
  function SringisEmpty(str) {
        str=str.trim();
        return (!str || 0 === str.length);
    }

0

正如其他人在这里提到的,有几件事情被评估为“虚假”,而你可能不想这样(例如空字符串或零)。我在JavaScript中发现检查nullundefined的最简单方法是:

thing != null

这里使用了类型强制转换(双等号而不是三等号),因此未定义的值在此处被强制转换为null,而空字符串、零等则不会。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接