js中如何判断字符串为空字符串?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js中如何判断字符串为空字符串?相关的知识,希望对你有一定的参考价值。

下面就是有关判断为空的简写方法。 
代码如下 


if (variable1 !== null || variable1 !== undefined || variable1 !== '')  
var variable2 = variable1; 
 


上面的意思是说如果variable1不是一个空对象,或者未定义,或者不等于空字符串,那么声明一个variable2变量,将variable1赋给variable2。也就是说如果variable1存在那么就将variable1的值赋给variable2,若不存在则为空字符串。如下面的简写代码。 
简写代码: 
代码如下 


var variable2 = variable1 || ''; 


以下是不正确的方法: 
代码如下 


var exp = null; 
if (exp == null) 
 
alert("is null"); 
 


exp 为 undefined 时,也会得到与 null 相同的结果,虽然 null 和 undefined 不一样。注意:要同时判断 null 和 undefined 时可使用本法。 
代码如下 


var exp = null; 
if (!exp) 
 
alert("is null"); 
 


如果 exp 为 undefined,或数字零,或 false,也会得到与 null 相同的结果,虽然 null 和二者不一样。注意:要同时判断 null、undefined、数字零、false 时可使用本法。 
代码如下 


var exp = null; 
if (typeof exp == "null") 
 
alert("is null"); 
 


为了向下兼容,exp 为 null 时,typeof null 总返回 object,所以不能这样判断。 
代码如下 


var exp = null; 
if (isNull(exp)) 
 
alert("is null"); 
 


判断字符串是否为空 
s 匹配任何空白字符,包括空格、制表符、换页符等等。等价于 [ fnrtv]。 很多情况下,都是用length来直接判断字符串是否为空,如下: 
代码如下 


var strings = ''; 
if (string.length == 0) 
 
alert('不能为空'); 
 


但如果用户输入的是空格,制表符,换页符呢?这样的话,也是不为空的,但是这样的数据就不是我们想要的吧。 
其实可以用正则表达式来把这些“空”的符号去掉来判断的 
代码如下 


var strings = ' '; 
if (strings.replace(/(^s*)|(s*$)/g, "").length ==0) 
 
alert('不能为空'); 
 

参考技术A 空字符串等价于逻辑假,所以直接判断即可:
var s="";
if(s)
//s不是空字符串
else
//s是空字符串

以上是关于js中如何判断字符串为空字符串?的主要内容,如果未能解决你的问题,请参考以下文章

如何判断既不为null也不为空字符串

js undefined 与空字符串怎么比较

Java空字符串与null的区别和判断字符串是不是为空的方法

js判断字符,串是不是为字母?

js 过滤所有空字符串

Java空字符串与null的区别和判断字符串是不是为空的方法