Javascript:如何检查字符串是否为空?

Javascript:如何检查字符串是否为空?,javascript,string,Javascript,String,我知道这是非常基本的,但我对javascript还是新手,在任何地方都找不到答案 如何检查字符串是否为空?这应该可以: if (value == "") { // it is empty } if (variable === "") { } 如果您想知道它是否为空字符串,请使用===而不是== if(variable === "") { } 这是因为===仅当两侧的值属于相同类型(在本例中为字符串)时才会返回true 例如: (false==“”)将返回true,(false==“”

我知道这是非常基本的,但我对javascript还是新手,在任何地方都找不到答案

如何检查字符串是否为空?

这应该可以:

if (value == "") {
  // it is empty
}
if (variable === "") {

}

如果您想知道它是否为空字符串,请使用===而不是==

if(variable === "") {
}
这是因为===仅当两侧的值属于相同类型(在本例中为字符串)时才会返回true

例如: (false==“”)将返回true,(false==“”)将返回false。

我检查长度

if (str.length == 0) {
}

但为了更好地检查:

if(str === null || str === '')
{
    //enter code here
}

请参见空格是否计为空?如果是这样的话,你可能需要一个正则表达式来测试它。我在这里补充说,有些人实际上应该检查
isBlank
,这将是
变量。trim()==''
如果(title.trim().length==0){//code}如果值真的是字符串,那么这是正确的,但它也会返回true,如果值=false或0或null。使用===代替。@Residuum:问题是“如何检查字符串是否为空?”@Gumbo:我认为在任何情况下都有效的答案比提供最小值的答案要好,所以我同意Residuum。对于初学者来说,这类事情特别重要。@Gumbo:正如问题所示,提问者没有Javascript方面的经验。由于Javascript不是强类型语言,不显式检查类型也是常见的错误源。事实上,我打算在它关闭之前编辑它:如果(!str | | str==“”){//enter code here}有很多方法可以做到这一点,但是如果字符串中有“”,那么它不一定是空的。Empty不是null。您从哪里了解到在JS中null变量的长度为0?你找到这些信息的来源是什么?如果str未定义怎么办?如果你在检查错误,最好的选择是
If(!str)
。但是如果你检查空字符串,根据问题,我认为nxt是最好的。接受的答案应该是使用===,如果str为null/undefined,则会出现典型的未捕获引用错误。此答案是错误的,因为即使变量
str
null
,而
null
对象类型,条件也是真实的,不是
string
。我有点迂腐,但是
如果(!str | | str.length==0)
会更好。(注意,3等于符号)+1到@达斯廷。如果将空空格添加到字符串中,<代码>长度<代码>对空白空间进行计数,因此使用<代码>长度>代码>我们不能确定字符串是否为空。@ EngQuz空间与空不一样,NULL的情况也是如此。空格是一个字符,因此不能将其视为
”。OP询问的是空字符串,我认为这个解决方案很好。@ChrisNash我理解为什么
==
通常更好,但对于这个特定的情况,我找不到一个原因,因为类型转换,
str.length
将为零。您是将其作为惯例使用,还是有一个可以获得意外结果的示例?如果(!str | | | str.trim().length==0)