当前位置: 首页 > 知识库问答 >
问题:

如何使用react或javascript检查对象数组中的键值对是否为空?

况弘新
2023-03-14

嗨,我有如下数据,

data = [
  { 
    attributes: [{key: '', value: ''}, {key: 'name1', value: ''}],
    info: '',
    meshes: [],
  }
  {
   attributes: [{key: '', value: ''}, {key: '', value: ''}],
   info: '',
   meshes: [],
  }
   .....so on.... 
  ]

因此,从上面的数据中,我想检查每个属性的键和值是否为空或未定义。我该怎么检查呢。谁能帮我一下吗。谢谢

共有3个答案

聂永怡
2023-03-14
for (let x in data) {
  for (let y in data[x].attributes) {
    if ((key === '') || (value === '')) {
      return ('data:' + x + 'attribute:' + y + 'missing key or value');
    }
  }
}

未经测试。循环遍历所有数据和属性以测试空键/值。如果要分别检查值和键,您可以添加额外的其他内容。

艾骏喆
2023-03-14

首先,迭代数据,然后检查属性数组的长度

data.forEach(attr => {
  if(attr.length > 0){
    // attr contains key and value
  }
})
邢焕
2023-03-14

这里有类似的SO帖子。

尝试以下代码:

function isEmptyObject(o) {
    return Object.keys(o).every(function(x) {
        return o[x]===''||o[x]===null;  // or just "return o[x];" for falsy values
    });
}

const isEmpty = Object.values(object).every(x => (x === null || x === ''));
 类似资料:
  • 问题内容: 我正在尝试编写一个接受字符串列表或单个字符串的函数。如果它是一个字符串,那么我想将其转换为仅包含一项的数组,因此我可以遍历它而不必担心错误。 那么,如何检查变量是否为数组? 我整理了以下各种解决方案,并创建了jsperf测试。它们都非常快,因此只需使用- 现在得到了很好的支持,并且可以跨框架使用。 问题答案: 在现代浏览器中,您可以 受Chrome5,Firefox 4.0,IE 9,

  • 问题内容: 我试图得到: 在我自己的脚本中,我以前只是使用它,因为我从来不需要作为属性: 因此,对于第二个对象,我想出了以下方法作为一种快速解决方案-大部分都能奏效。;) 问题是,这取决于浏览器是否强制执行只读属性,而并非所有人都这样做。 有没有好的替代品? 问题答案: 这可能很有趣: 它是DOM Level2的一部分。 更新2 :这是我在自己的库中实现它的方式:(以前的代码在Chrome中不起作

  • 问题内容: 如何检查值是否是JavaScript中的Object? 问题答案: 更新 : 这个答案是不完整的,并且会产生误导性的结果 。例如,在JavaScript中也被视为类型,更不用说其他几种极端情况了。请遵循以下建议,然后转到其他 原始答案 : 尝试使用和/或。 编辑:这个答案给出了一个如何检查变量属性的想法,但是它不是一个防弹配方(毕竟根本没有配方!)来检查它是否是一个对象,而不是对象。由

  • 问题内容: 我有一个需要循环通过的嵌套JSON对象,每个键的值可以是String,JSON数组或另一个JSON对象。根据对象的类型,我需要执行不同的操作。有什么方法可以检查对象的类型以查看它是String,JSON对象还是JSON数组? 我尝试使用和,但似乎都没有用,因为这将为JSON对象和数组都返回一个对象,并且在我这样做时给出错误。 更具体地说,在将JSON解析为JS对象之后,有什么方法可以检

  • 我有一个需要循环的嵌套JSON对象,每个键的值可以是字符串、JSON数组或其他JSON对象。根据对象的类型,我需要执行不同的操作。是否有任何方法可以检查对象的类型,以查看它是字符串、JSON对象还是JSON数组? 我尝试使用和,但两者似乎都不起作用,因为将为JSON对象和数组返回一个对象,并且当我执行时,会给出一个错误。 更具体地说,在将JSON解析为JS对象后,是否有任何方法可以检查它是普通字符

  • 问题内容: 我的服务器端代码返回一个值,该值成功时为json对象,失败时为字符串’false’。现在如何检查返回的值是否为json对象? 问题答案: 如果字符串是JSON,则jQuery.parseJSON()应该返回类型为“对象”的对象,因此您只需使用以下命令检查类型