0
点赞
收藏
分享

微信扫一扫

判断对象为空

Mezereon 2021-09-25 阅读 169
前端

一、支持 Object.keys 情况下

  • 排除 undefinednull 等报错
  • 判断是否含 key
  • 通过构造函数排除包装类,如 new String()new Boolean() 等情况
function isEmptyObject(val) {
return val && Object.keys(val).length === 0 && val.constructor === Object
}

二、不支持 Object.keys 时

function isEmptyObject(val) {
return Object.prototype.toString.call(val) === '[object Object]' && JSON.stringify(val) === '{}'
}

三、使用第三方 JS 库

// Lodash 
_.isEmpty(val)

// Underscore
_.isEmpty(val)

// jQuery
$.isEmptyObject(val)
举报

相关推荐

0 条评论