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
