因为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为空')}
如上,使用特别方便