Javascript 如何检查对象内的数组是否为空

Javascript 如何检查对象内的数组是否为空,javascript,jquery,Javascript,Jquery,这是我的样本数据。我想检查对象中的数组是否为空 { collection: Array(0), availability: Array(0), gender: Array(0), brand: Array(0), } 下面是我现在正在使用的代码(从其他stackoverflow链接复制) 以上代码运行良好。 我的主要问题是,有没有更干净的方法通过jQuery代码检查对象内部的所有空数组,就像我们使用jQuery.isEmptyObject()检查空对象一样 谢谢您不需要所有

这是我的样本数据。我想检查对象中的数组是否为空

{
  collection: Array(0), 
  availability: Array(0), 
  gender: Array(0),
  brand: Array(0),
}
下面是我现在正在使用的代码(从其他stackoverflow链接复制)

以上代码运行良好。 我的主要问题是,有没有更干净的方法通过jQuery代码检查对象内部的所有空数组,就像我们使用jQuery.isEmptyObject()检查空对象一样


谢谢

您不需要所有的退货和作业。e、 g

function objectIsEmpty(obj) {
    return Object.keys(obj).every(key => 
      Array.isArray(obj[key]) && obj[key].length;
    );
}

你不需要所有的回报和分配。e、 g

function objectIsEmpty(obj) {
    return Object.keys(obj).every(key => 
      Array.isArray(obj[key]) && obj[key].length;
    );
}

ES8有
Object.values
,如果您只需要这些值,它比
Object.keys
要好。您还可以直接返回
Array.isArray(val)&&val.length==0
test,如果需要,可以简洁地返回:

const objectIsEmpty = obj => Object.values(obj).every(
    val => Array.isArray(val) && val.length === 0
);

ES8有
Object.values
,如果您只需要这些值,它比
Object.keys
要好。您还可以直接返回
Array.isArray(val)&&val.length==0
test,如果需要,可以简洁地返回:

const objectIsEmpty = obj => Object.values(obj).every(
    val => Array.isArray(val) && val.length === 0
);