js判断数组是否为空 判断任意变量是否为空(非空判断)
1、一般情况下判断一个数组是否为空可以用(明确该字段为数组类型)
arr.length == 0
来判断
但是还有一种情况时不能确定数组是否定义,比如接口传回的数据中如果没有这个字段,就会报错
Cannot read properties of undefined (reading 'length')
这种情况下length就不再适用
可以使用arr != true 来判断,数组为空数组或者未定义都适用,返回结果为true即这个数组为空
2、isEmpty 返回值为true表示为空(NaN , [] , {} , undefined , null , " " ),false为有值
/** * 判断是否有值,0不发生转换,数字0和字符串0都是false,即 不为空 * 空数组也返回true,即为空 * @param v * @returns {boolean} */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 (isNaN(v)) return true; // 0不发生转换,数字0和字符串0都是false,即 不为空 break; case 'object': if (null === v || v.length === 0) return true; for (var i in v) { return false; } return true; } return false; }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了