在Javascript中是否有任何检查一个值是否为空和非空字符串的方法?我使用的是下面这个。
var data; //get its value from db
if(data != null && data != '') {
// do something
}
但我想知道是否有其他更好的解决方案。谢谢。
如果你真的想确认一个变量不是空的,而不是一个空字符串,你会写。
if(data !== null && data !== '') {
// do something
}
注意,我改变了你的代码,以检查类型是否相等(!==
|==
)。
然而,如果你只是想确保,代码只对"合理"的值运行,那么你可以,正如其他人已经说过的,写。
if (data) {
// do something
}
因为在javascript中,空值和空字符串都等于false(即null == false
)。
这两部分代码的区别在于,对于第一部分,每一个不是空值或空字符串的值都会进入`if'。但是,在第二部分中,每一个真实的值都会进入 "if":"false"、"0"、"null"、"undefined "和空字符串则不会。