400-920-5594
首页
解决方案
经典案例
资讯中心
关于我们
首页 > 咨询中心 > 技术分享
JavaScript 判断数据是否为空综合方法
2019-06-27 3566 技术分享

数据为空在程序开发里面是很常见的,感觉只有 JS 最复杂,数据为空也有很多种情况,例如下面的值:


//    var a = "";

//    var a = " ";

//    var a = null;

//    var a = undefined;

//    var a = [];

//    var a = {};

//    var a = NaN;


成都微信开发


我们分别来说说这些值是怎么来的:

1、直接定义一个变量,给他复制空字符串,类型为 String

2、和上面的一样,只不过值是一个空格或者是多个空格

3、这个就和上面的有本质上的区别了,NULL 代表声明了一个空对象,不是一个字符串,可以赋给任何对象。

4、undefined类型,当一个声明了一个变量未初始化时,得到的就是undefined

5、空数组

6、空对象,但是不是nullnull其实是表示尚未存在的对象,而{}才代表一个真正的空对象,即表示其中没有数据)

7、最后一个通常是数学计算的时候,无法得到一个数字就直接返回NAN

下面来看看判断方法

 

if(a === undefined) { // 只能用 === 运算来测试某个值是否是未定义的

  console.log("undefined");

}

 

if(a == null) { // 等同于 a === undefined || a === null

  console.log("null");

}


// String    

if(a == "" || a == null || a == undefined){ // "",null,undefined

  console.log("为空");

}

if(!a){ // "",null,undefined,NaN

  console.log("为空");

}

if(!$.trim(a)){ // "",null,undefined

  console.log("为空");

}

 

// Array

if(a.length == 0){ // "",[]

  console.log("为空");

}

if(!a.length){ // "",[]

  console.log("为空");

}

 

// Object {}

if($.isEmptyObject(a)){ // 普通对象使用 for...in 判断,有 key 即为 false

  console.log("为空");

}