javascript判断变量是不是空值

JavaScript本身没有判断一个变量是不是空值的函数,因为变量有可能是string,object,number,boolean等类型,类型不同,判断方法也不同。所以在文章中写了一个函数,用以判断JS变量是否空值,如果是undefined, null, ‘‘, NaN,false,0,[],{} ,空白字符串,都返回true,否则返回false

方法:

function isEmpty(v) {
    switch (typeof v) {
    case ‘undefined‘:
        return true;
    case ‘string‘:
        if (v.replace(/(^[ \t\n\r]*)|([ \t\n\r]*$)/g, ‘‘).length == 0) return true;
        break;
    case ‘boolean‘:
        if (!v) return true;
        break;
    case ‘number‘:
        if (0 === v || isNaN(v)) return true;
        break;
    case ‘object‘:
        if (null === v || v.length === 0) return true;
        for (var i in v) {
            return false;
        }
        return true;
    }
    return false;
}

测试:

isEmpty()              //true
isEmpty([])            //true
isEmpty({})            //true
isEmpty(0)             //true
isEmpty(Number("abc")) //true
isEmpty("")            //true
isEmpty("   ")         //true
isEmpty(false)         //true
isEmpty(null)          //true
isEmpty(undefined)     //true

转载:http://www.bitscn.com/school/Javascript/201503/463294.html

时间: 2024-10-10 10:32:00

javascript判断变量是不是空值的相关文章

javascript 判断变量 是否为空null,undefined, 空数组,空对象(空Object),字符串是否为空或全由空白字符组成,数字是否为0,布尔是否为false。

javascript 判断变量 是否为空null,undefined, 空数组,空对象,空Object,字符串是否为空或全由空白字符组成,数字是否为0,布尔是否为false.由于Object没有length用 Object.keys()适用于数组,对象 返回可枚举的实例属性名组成的数组来判断是否为空. 利用逻辑判断中or (||)只要有一项为真则不再计算下一个表达式 来实现不管传入的参数是何种类型.只要符合我对空的定义即返回true. 1 function IsNothing(e) { 2 va

JavaScript判断变量数据类型

一.JS中的数据类型 1.数值型(Number):包括整数.浮点数. 2.布尔型(Boolean) 3.字符串型(String) 4.对象(Object) 5.数组(Array) 6.空值(Null) 7.未定义(Undefined) 二.1.数值型(number) 比较常用的判断方法是: function isNumber(val){             return typeof val === 'number';         } 2.判断变量val是不是布尔类型 function

JavaScript判断变量类型

使用JavaScript变量时是无法判断出一个变量是0 还是“”的 这时可用typeof()来判断变量是string 还是number来区分0和“”, typeof(undefined) == 'undefined' typeof(null) == 'object' typeof("") == 'string' typeof(0) == 'number' typeof(false) == 'boolean'

JavaScript判断变量是否为数组的方法(Array)

废话不多说直接上一个代码: 1.这里是通用的检测方法 /* * 判断是否是数组 */ function isArray(obj){ return Object.prototype.toString.call(obj)=='[object Array]'; } 2.jquery的判断写法 var result=$.isArray(obj); 3.instanceof 操作符 var ary = [1,23,4]; console.log(ary instanceof Array)//true; 总

isNaN() JavaScript判断变量是否是一个数字

NaN,即非数值(Not a Number)是一个特殊的值,这个数值用于表示一个本来要返回数值的操作数未返回数值的情况(这样就不会抛出错误了).比如,在其他语言中,任何数值除 以 0 都会导致错误而终止程序执行.但在 ECMAScript 中,会返回出特殊的值,因此不会影 响程序执行. var box = 0 / 0; // NaN var box = 12 / 0; // Infinity var box = 12 / 0 * 0; // NaN 可以通过 Number.NaN 得到 NaN

判断变量是否定义、空值问题—— “- :- := :+ :? ”

分析 -  :-  :=  :+  :?   的区别 1.判断变量是否定义; r=${xx-"mmmmmmmmmmmmmmmmmmmmmmmmmmmmm"} [[email protected] opt]# unset xx [[email protected] opt]# r=${xx-"mmmmmmmmmmmmmmmmmmmmmmmmmmmmm"} [[email protected] opt]# echo $r mmmmmmmmmmmmmmmmmmmmmmmm

JavaScript判断数据类型总结

最近做项目中遇到了一些关于javascript数据类型的判断处理,上网找了一下资料,并且亲自验证了各种数据类型的判断网页特效,在此做一个总结吧! 一.JS中的数据类型  1.数值型(Number):包括整数.浮点数. 2.布尔型(Boolean) 3.字符串型(String) 4.对象(Object) 5.数组(Array) 6.空值(Null) 7.未定义(Undefined) 二.判断一个变量的数据类型 1.数值型(number) 比较常用的判断方法是: 1 function isNumbe

(转)JavaScript判断数据类型总结

一.JS中的数据类型  1.数值型(Number):包括整数.浮点数. 2.布尔型(Boolean) 3.字符串型(String) 4.对象(Object) 5.数组(Array) 6.空值(Null) 7.未定义(Undefined) 二.判断一个变量的数据类型 1.数值型(number) 比较常用的判断方法是: 1 function isNumber(val){ 2 return typeof val === 'number'; 3 } 但有些情况就不行,比如: 1 var a; 2 ale

JavaScript基础——变量-运算符-流程控制语句

JavaScript组成 一个完整的 JavaScript 实现是由以下 3 个不同部分组成的: ECMAScript:描述了该语言的语法和基本对象: 文档对象模型(Document Object Model,简称DOM)):描述处理网页内容的方法和接口: 浏览器对象模型(Browser Object Model,简称BOM)):描述与浏览器进行交互的方法和接口. 变量 变量类型:object string function boolean undefined null number JavaS