/**
* 对传入参数判空
* 返回 true or false
*
* @param { String|Number|undefined|Object|Array|Date} para
* @return { Boolean } true or false
*/
function isEmpty(params) {
let _isEmpty = false
if (typeof params === 'undefined') {
_isEmpty = true
} else if (typeof params === 'string') {
// StringObj.trim():从字符串中移除前导空格、尾随空格和行终止符。
_isEmpty = (params.trim() === '')
} else if (params instanceof Array) {
_isEmpty = (params.length === 0)
} else if (params instanceof Date) {
_isEmpty = false
} else if (typeof params === 'object') {
let paramsName
// 如果params不是一个空的对象才能进入for in循环体中
for (paramsName in params) {
_isEmpty = false
}
_isEmpty = true
} else if (typeof params === 'number') {
return isEmpty(params + '')
}
return _isEmpty
}
const a = 0 //false
const b = '' //true
const c = undefined //true
const d = {} //true
const e = null //true
判空
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
相关阅读更多精彩内容
- 写这个,其实是有一次送测时提的bug,当时对这个问题不解,后来花了点时间理解了之后,才知道大概是怎么回事。先看下当...
- NSString的"空",有哪些情况呢: NSString *str; 1 str = @""; 2 str = ...
- mInstance为什么要加volatile? 假设线程A执行了mInstance = new ApiManage...