如何检查对象中的数组是否全部为空?

2023-12-25

所以我需要传入一个对象,其中每个属性都是数组。该函数将使用每个数组中保存的信息,但我想通过检查每个数组是否为空/空来检查整个对象是否为空(不仅仅是没有属性)。到目前为止我所拥有的:

function isUnPopulatedObject(obj) { // checks if any of the object's values are falsy
    if (!obj) {
        return true;
    }

    for (var i = 0; i < obj.length; i++) {
        console.log(obj[i]);
        if (obj[i].length != 0) {
            return false;
        }    
    }

    return true;  
}

例如,这将导致上述结果false:

obj {
    0: Array[0]
    1: Array[1]
    2: Array[0]
}

虽然这是我正在检查的空(也是如此):

obj {
    0: Array[0]
    1: Array[0]
    2: Array[0]
}

上面的代码不起作用。提前致谢。


因此,如果我们想遍历该对象并查找该对象的每个键是否都通过了检查,我们可以使用Object.keys和数组#extraevery像这样:

var allEmpty = Object.keys(obj).every(function(key){
return obj[key].length === 0
})

这将设置allEmpty布尔值(真/假),取决于我们每次运行给定的检查是否obj[key].length === 0返回 true 或 false。

该对象设置allEmpty为真:

var obj = {
    0: [],
    1: [],
    2: []
}

虽然这将其设置为 false:

var obj = {
    0: [],
    1: [],
    2: [],
    3: [1]
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何检查对象中的数组是否全部为空? 的相关文章

随机推荐

  • 将 Angular2 HTML 和 TypeScript 构建到单个文件

    我正在使用 Angular2 和 TypeScript 构建一个应用程序 大型 它将需要分为许多项目 每个项目将有许多组件 每个组件都有一个 html view css样式表和 ts逻辑 类 我希望每个项目都编译成一个 js文件并复制到将在
  • 获取 Laravel 5.3 中提交按钮的值

    我的页面上有一个表格
  • HTML5 样板、HTML5 重置 CSS 验证

    我正在为我的 Web 项目选择 HTML5 模板 过去几个月我一直在使用 HTML5 Initiliazr 它使用 Boilerplate 但决定重新评估这两个模板 因为我不喜欢 HTML5 Boilerplate 的 CSS 对 W3 C
  • 自动调整大小遮罩在 iOS 中何时生效?

    我有一个笔尖 最初是为 iPhone 应用程序创建的 尺寸为 320x480 并设置了自动调整大小蒙版 以便在其超级视图很大时在各个方向上扩展视图 我现在正在使我的应用程序变得通用 并使用相同的笔尖并将其显示在 iPad 上的页面表中 我的
  • 如何更改ggplot2的scale_fill_brewer中一个值的颜色值?

    我有一个 R 数据框 df 我在 ggplot2 中将其绘制为条形图 并根据数据框中的列进行着色 df type 现在 我正在使用默认的着色模式 scale fill brewer 来指定颜色 如何将黑色分配给一个值 df type 1 并
  • 解析文件名中丢失的字符,就像读取/斜杠字符一样

    计算机上的文件名是这样命名的 quant ph9501001 math9901001 cond mat0001001 hep lat0308001 gr qc0703001 但在 http 链接上文件名是 包括角色 quant ph 950
  • 添加数千个标记 Google Map API V3

    我目前正在组装一个演示应用程序 需要在地图上显示 28 000 个标记 而不使用任何类型的聚类 问题是 将标记添加到地图上花费的时间太长 以至于浏览器崩溃 这是当前的流程 从数据库中检索地图点 包括 LAT 和 LONG 无需进行地理编码
  • 使用 PySide2 从资源 (QRC) 文件导入 QML

    我已将一个简单的 QML 组件 qml MyButton 添加到我的 resource qrc 文件中
  • 如何在 Adob​​e FLEX 中创建“浏览文件夹”对话框?

    有人知道如何在 Adob e FLEX 中创建 浏览文件夹 对话框吗 这可能吗 Thanx 如果它是 Air 应用程序 您可以执行以下操作 var f File new File f addEventListener Event SELEC
  • Ruby on Rails 在资产中查找 css,而不是在 public/stylesheets 中

    我是 Ruby 新手 使用 ruby 1 9 2P180 和 Rails 3 1 0 rc2 我的 my app root public stylesheets screen css 和 application html erb 中有 sc
  • PHP - PDO 获取循环

    我想我在这里失去了理智 这是代码 这是我为了证明这一点而实际尝试做的事情的简化版本 STH DBH gt query SELECT FROM help STH gt setFetchMode PDO FETCH ASSOC while ro
  • Android 运行应用程序内存使用情况

    我们在 Elipse 内存分析工具 在 DDMS 视图中 中看到的堆使用情况 已分配 与 Android 设备上显示的同一应用程序的内存使用大小之间有什么区别 Settings gt Apps gt Running 尽管我积极尝试通过在不需
  • PDF 供下载,而非链接供查看/下载

    我试图做到这一点 以便当您单击 此处下载 时 pdf 文件将下载到用户的桌面 我该怎么做呢 Use the Content Disposition https en wikipedia org wiki List of HTTP heade
  • 将 PowerMock 与 Spock 结合使用

    我有一个带有一些静态方法的类 我需要模拟这些静态方法 我知道 PowerMock 可以做到这一点 但我找不到任何教程 材料来阐明 Spock PowerMock 集成 与 Junit 相比 我更喜欢 Spock 因此出现了难题 有没有办法让
  • Visual Studio 2010 包含目录路径

    我有一个 Visual Studio 解决方案 myvs sln 路径如下 c dir1 dir2 dir3 myvs myvs myvs sln 我安装了 boost 版本 xxxc dir1 dir2 dir3 boostxxx 我在项
  • 如何让 JQuery/Javascript 访问 extJS 生成的元素?

    我正在使用 extJS 构建一个简单的网站 我可以成功地将来自 JQuery 和 extJS 中的点击事件附加到我在 body 标记本身的 HTML 中创建的元素 但是 我附加到 extJS 生成的元素的事件要么没有效果 要么导致不生成 e
  • 如何检查和调整浏览器中的 :before 和 :after 伪元素?

    我使用 after 伪元素创建了一些相当复杂的 DOM 元素 并且我希望能够在 Chrome Inspector 或 Firebug 或等效工具中检查和调整它们 尽管这个功能被提到这篇 WebKit Safari 博客文章 http www
  • Linq to SQL DataContext:如何加载数据?

    我对 Linq to SQL 完全陌生 我正在创建一个与数据库密切配合的 Web 应用程序 我正在寻找最快且连接时间高效的模型 并相信 Linq to SQL 就是这样 我正在使用 C Net4 Visual Studio 2010 为了简
  • jQuery UI 对话框未位于屏幕中央

    我有一个 jQuery 对话框 该对话框位于屏幕中间 然而 它在垂直方向上似乎稍微偏离中心 这是代码 add box dialog autoOpen true width 300 modal true resizable false bgi
  • 如何检查对象中的数组是否全部为空?

    所以我需要传入一个对象 其中每个属性都是数组 该函数将使用每个数组中保存的信息 但我想通过检查每个数组是否为空 空来检查整个对象是否为空 不仅仅是没有属性 到目前为止我所拥有的 function isUnPopulatedObject ob