You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何实现判断对象的所有属性值均为空数组的逻辑?

解决对象所有数组属性为空的判断问题

先指出你代码里的几个问题:

  • 变量名笔误:定义的对象是test,但代码里用了未声明的cl,会直接触发报错
  • 逻辑偏离需求:你用Object.entries拿到的是[键, 值]对,接着Object.values(element)是把这个数组拆成键和值的集合,然后判断是否存在空字符串——但你的需求是检查所有属性值都是空数组,逻辑方向完全错了

正确实现代码

const test = {
  "10": [],
  "1": []
};

// 获取对象所有属性值,检查每个值都是数组且为空
const output = Object.values(test).every(val => Array.isArray(val) && val.length === 0);

console.log(output); // 输出 true

逻辑说明

  • Object.values(test):提取对象所有属性值组成数组,这里结果是[[], []]
  • every(val => ...):遍历每个值,只有所有值都满足条件时才返回true
  • Array.isArray(val) && val.length === 0:确保当前值是数组类型,并且数组长度为0(即空数组)

如果对象里可能存在非数组属性,只想检查数组类型的属性是否全为空,可以调整逻辑:

const test = {
  "10": [],
  "1": [],
  "desc": ""
};

const output = Object.values(test)
  .filter(val => Array.isArray(val)) // 只筛选数组类型的属性
  .every(val => val.length === 0);

console.log(output); // 输出 true

内容的提问来源于stack exchange,提问作者Marizona

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 12:35:37