迹忆客 专注技术分享

当前位置:主页 > 学无止境 > WEB前端 > JavaScript >

如何在 JavaScript 中检查对象是否为空

作者:迹忆客 最近更新:2023/03/11 浏览次数:

对象在 JavaScript 中扮演着重要的角色,因为它们允许我们结构化、维护和传输数据;然而,有些时候我们得到的对象是空的。在这篇文章中,我们将演示几种方法,告诉你如何在 JavaScript 中检查对象是否为空。

在 JavaScript 中使用 hasOwnProperty() 来检查一个对象是否为空

我们可以检查对象中是否存在指定的属性。在下面的例子中,我们正在检查两个对象是否存在 prop 属性。isObjEmpty() 函数在对象为空时返回 boolean 命令。

如果指定的属性存在,该函数返回 False;否则返回 True。注意,这个方法只有在不支持 ECMAScript 5 的情况下才有用,如果有 ECMAScript 5,请参考下面的过程。

const obj1 = { one: 1, two: 2, three: 3 };
const obj2 = {};

console.log("Is Object 1 Empty? : ", isObjEmpty(obj1));
console.log("Is Object 2 Empty? : ", isObjEmpty(obj2));

function isObjEmpty(obj) {
  for (var prop in obj) {
    if (obj.hasOwnProperty(prop)) return false;
  }

  return true;
}

输出:

Is Object 1 Empty? :  false
Is Object 2 Empty? :  true

使用 Object.key() 检查 JavaScript 中对象是否为空

在上一个例子中,我们看到了如何在 JavaScript 中检查对象是否为空;但是,如果我们有 ECMAScript 5 的支持,就会出现不同的结果。

在这个例子中,我们将使用 Object.keys() 命令来检查对象是否有任何键。如果 keys 的长度为零,那么它就是空的;否则,它就不是空的。

const obj1 = { one: 1, two: 2, three: 3 };
const obj2 = {};

console.log("Is Object 1 Empty? : ", isObjEmpty(obj1));
console.log("Is Object 2 Empty? : ", isObjEmpty(obj2));

function isObjEmpty(obj) {
  return Object.keys(obj).length === 0;
}

输出:

Is Object 1 Empty? :  false
Is Object 2 Empty? :  true

使用 Underscore.js 库来检查对象是否为空

另一个检查对象中是否没有数据的简单方法是使用 Undescore.js 库;这是一个有几个有用方法的 JavaScript 库。其中一个方法是 _.isEmpty(),如果对象为空,则返回 true。

我们可以通过在 <script> 标签中指定其 URL 来包含该库。此外,我们可以使用下划线来访问它的函数,就像它的名字一样。

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Empty Object Example</title>

    <script src="https://cdn.jsdelivr.net/npm/underscore@1.11.0/underscore-min.js"></script>
  </head>
  <body>
    <script>
      const obj1 = { one: 1, two: 2, three: 3 };
      const obj2 = {};

      console.log("Is Obj1 Empty? : ", _.isEmpty(obj1));
      console.log("Is Obj2 Empty? : ", _.isEmpty(obj2));
    </script>
  </body>
</html>

输出:

Is Obj1 Empty? :  false
Is Obj2 Empty? :  true

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

如何在 PHP 中获取时间差的分钟数

发布时间:2023/03/29 浏览次数:183 分类:PHP

本文介绍了如何在 PHP 中获取时间差的分钟数,包括 date_diff()函数和数学公式。它包括 date_diff()函数和数学公式。

PHP 中的重定向

发布时间:2023/03/29 浏览次数:136 分类:PHP

本教程演示了如何将用户从页面重定向到 PHP 中的其他页面

PHP 分页

发布时间:2023/03/29 浏览次数:66 分类:PHP

本教程介绍如何在 PHP 中对数据库行进行分页

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便