【发布时间】:2018-09-15 21:54:02
【问题描述】:
我有一个基于文件数据填充的对象。我想知道被填充的对象是否有主要和次要的空对象,并且 gpa 中的属性都设置为空。以下是填充对象的样子:
Bob Smith {
major: {},
minor: {},
gpa: { freshman: null, sophomore: null, junior: null }
}
我想知道 bob smith 对象中的所有对象是否都是空的,这样我就可以退出程序而无需执行所有逻辑。
编辑 我没有像以前那样清楚。这不是一个全空或全是人口的情况。在某些情况下,有些对象会有数据,而有些则没有。 Bob Smith 有可能被填充为:
Bob Smith {
major: {
department: 'Math'
},
minor: {},
gpa: { freshman: 3.5, sophomore: null, junior: null }
}
简而言之,Bob Smith 对象可能有很多不同的非空对象组合,我只是在寻找一种方法来快速确定major 和minor 是否为空并且gpa 的值是否设置为null。我曾尝试使用 ._isEmpty(),但一直挂断 gpa 对象,因为它不是空的。
【问题讨论】:
-
在您的示例中,
gpa属性不为空。这需要递归吗?您尝试过哪些不起作用的方法? -
你的目标不明确。如前所述,数据要么全部为空/空,要么全部填充。如前所述,您只需测试
major是否为空。请确认或澄清您的目标。 -
This:
BobSmith.major.entries().length将提供您的答案,如果对象全为空,则返回 false,否则返回非零答案(等效于 true)。
标签: javascript object