首页 > 解决方案 > 如何同时检查 Object 和其他字段中的数组是否为空?

问题描述

假设我有看起来像这样的对象:

filter: {
masterName: '',
service:[],
}

如何检查数组和 masterName 字段是否为空?

标签: javascriptarraysobjectiteration

解决方案


只需评估length它们每个的属性,看看长度是否为0,如下例所示:

var filter = {
  masterName: '',
  service: [],
}

// Checks whether masterName is zero-length
if (filter.masterName.length === 0) {
  console.log('masterName is empty');
}

// Checks whether service is zero-length
if (filter.service.length === 0) {
  console.log('service is empty');
}

// Checks whether either are zero-length
if (filter.masterName.length === 0 && filter.service.length === 0) {
  console.log('Both are empty');
}

字符串长度在这里被描述为:

String 对象的 length 属性包含字符串的长度,以 UTF-16 代码单元表示

数组长度在这里被描述为:

作为 Array 类型实例的对象的 length 属性设置或返回该数组中元素的数量。


推荐阅读