Code前端首页关于Code前端联系我们

如何在Javascript中检测空对象

terry 2年前 (2023-09-09) 阅读数 207 #Javascript
文章标签 JavaScript

今天我就教大家如何在js中检测空对象,比如var a = {};对象 a 是一个空对象,因为它不包含任何属性。

Javascript实现

ES7 实现

/**
 * 时间:2019年8月18日
 * 家庭教程:https://www.codeqd.com/wp-content/uploads/2023/09/
 */
// 因为 Object.entry(new Date()).长度=== 0;
// 所以我们需要再进行一步检查 =>obj.constructor ===Object
Object.entry(obj).length === 0 && obj.constructor === Object

ES5 实现

/**
 * 时间:2019年8月18日
 * 家庭教程:https://www.codeqd.com/wp-content/uploads/2023/09/
 */
// 因为 Object.entry(new Date()).长度=== 0;
// 所以我们需要做更多检查
Object.keys(obj).length === 0 && obj.constructor === Object

ES5之前是如何实现的

/**
 * 时间:2019年8月18日
 * 家庭教程:https://www.codeqd.com/wp-content/uploads/2023/09/
 */
函数 isEmpty(obj) {
    for(obj 中的 var 属性) {
      if (obj.hasOwnProperty(prop)) {
        返回假;
      }
    }
  
    返回 JSON.stringify(obj) === JSON.stringify({});
  }

框架的实施

jQuery

/**
 * 时间:2019年8月18日
 * 家庭教程:https://www.codeqd.com/wp-content/uploads/2023/09/
 */
jQuery.isEmptyObject({}); // 正确

加载

/**
 * 时间:2019年8月18日
 * 家庭教程:https://www.codeqd.com/wp-content/uploads/2023/09/
 */
_。空的({}); // 正确

下划线

/**
 * 时间:2019年8月18日
 * 家庭教程:https://www.codeqd.com/wp-content/uploads/2023/09/
 */
_。空的({}); // 正确

霍克

/**
 * 时间:2019年8月18日
 * 家庭教程:https://www.codeqd.com/wp-content/uploads/2023/09/
 */
Hoek.deepEqual({}, {}); // 正确

ExtJS

/**
 * 时间:2019年8月18日
 * 家庭教程:https://www.codeqd.com/wp-content/uploads/2023/09/
 */
Ext.Object.isEmpty({}); // 正确

AngularJS(版本 1)

/**
 * 时间:2019年8月18日
 * 家庭教程:https://www.codeqd.com/wp-content/uploads/2023/09/
 */
角度.equals({}, {}); // 正确

拉姆达

R.isEmpty({}); // 正确

相关框架链接

jQuery.isEmptyObject()

_.isEmpty(值)

下划线js

挂钩

分机

AngularJS

拉姆达

版权声明

本文仅代表作者观点,不代表Code前端网立场。
本文系作者Code前端网发表,如需转载,请注明页面地址。

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

热门