判断一个对象是否为空对象,判断一个对象中是否有空值

问题:做贵州项目时,遇到判断如果后台返的数据是空,则下面的代码不展示,平常遇到的都是后台返回数组,判断数组的长度是否大于1即可,这次是对象
方案:

//判断一个对象是否为空对象
//优先使用,性能较好
Object.keys(obj).length === 0;
//存在特殊情况 如果对象包含 toJSON() 方法,JSON.stringify() 会调用该方法进行转换,可能导致判断结果不准确。
JSON.stringify(obj)=='{}'
//判断一个对象中是否有空值
function hasEmptyValue(obj) {
    for (let value of Object.values(obj)) {
        if (!value || typeof value === 'undefined' || Array.isArray(value) && !value.length) {
            return true; // 如果存在任何一个为空或未定义的属性值,则返回true
        }
    }
    
    return false; // 若没有发现空值,则返回false
}
posted @ 2024-03-07 15:57  张尊娟  阅读(41)  评论(0)    收藏  举报