因为JS 中判断一个字段是否为空非常复杂,涉及到undefined等多种情况,特此写了一个工具类方法,使用简单,判断全面,避免重复造轮子~
/**
* 用于判断空,Undefined String Array Object Number boolean
*/
function isNull(str) {
if (Object.prototype.toString.call(str) === '[object Undefined]') { //空
return true
} else if (
Object.prototype.toString.call(str) === '[object String]' ||
Object.prototype.toString.call(str) === '[object Array]') { //字条串或数组
return str.length == 0 ? true : false
} else if (Object.prototype.toString.call(str) === '[object Object]') {
return JSON.stringify(str) == '{}' ? true : false
} else if (typeof(str) == 'number') { //Number 型
if (str) {
return false
} else { //数字0 不算空
if (str == 0) {
return false
}
return true
}
} else if (typeof(str) == 'boolean') {
if (!param) {
return true;
} else {
return false;
}
} else {
return true
}
}
记得对外暴露一下接口:
module.exports = {
isNull: isNull, //判断是否为空
}
使用方法:
1、放到项目的工具.js中,比如 util.js
2、在某个页面中引用一下
const AppUtil = require('./utils/util.js')
var str = ''
if(AppUtil.isNull(str)){
console.log('str为空')
}
var arr = []
if(AppUtil.isNull(arr)){
console.log('arr为空')
}
如上,使用特别方便