Javascript 如何检查数组中的多个对象是否为空

Javascript 如何检查数组中的多个对象是否为空,javascript,Javascript,我想检查数组中的对象是否为空。 这就是我接收数据的方式,对象长度是动态的,因此我不能使用任何硬编码条件 [{},{},{},{},{},{},{},{},{},{}] // length is dynamic 我有很多方法,liek: Object.keys(myarray[0]).length === 0; //but this applies only for object. 是否有一种优雅的方法可以在某个条件下检查此情况?若要检测阵列中是否有空对象,请结合使用和 const anyE

我想检查数组中的对象是否为空。 这就是我接收数据的方式,对象长度是动态的,因此我不能使用任何硬编码条件

[{},{},{},{},{},{},{},{},{},{}] // length is dynamic
我有很多方法,liek:

 Object.keys(myarray[0]).length === 0; //but this applies only for object.

是否有一种优雅的方法可以在某个条件下检查此情况?

若要检测阵列中是否有空对象,请结合使用和

const anyEmptyObjects=myarray.some(o=>Object.keys(o).length==0)

要检索空对象,请使用与相同的谓词

const emptyObjects=myarray.filter(o=>Object.keys(o.length==0)
那怎么办?虽然我想这没什么不同

let a = [{},{test:1},{},{},{test:2},{},{},{test:3},{},{}];
let result = a.map((ele) => (Object.entries(ele) == 0));
输出

[true, false, true, true, false, true, true, false, true, true]

要完成@jmp的解决方案,您可以得到如下的
hasEmapty
的最终答案:

const haspempty=arr=>arr.reduce((acc,obj)=>acc | |!Object.entries(obj).length,false)
//---
设a=[{},{test:1},{},{},{test:2},{},{},{test:3},{},{},{}];
设b=[{test:3},{test:4},{test:5}]
设c=[{},{}]
设d=[]
console.log(hasfempty(a))
console.log(hasfempty(b))
console.log(hasfempty(c))

console.log(hasEmpty(d))
是否要检查数组中是否至少有一个对象为空,或者数组中是否有多个对象为空