如何检查对象数组中的键是否为空?

Ani*_*ive 1 javascript arrays react-native

我正在做本机应用程序的反应。我收到如下 json 响应。

[
  {
    id: '508',
    class: 'class1',
    value: '0',
    percentage: '8.90',
    color: 'black'
  },
  {
    id: '509',
    class: 'class2',
    value: '0',
    percentage: '2.40',
    color: 'black'
  },
  {
    id: '510',
    class: 'class3',
    value: '0',
    percentage: '56.40',
    color: 'black'
  },
  {
    id: '511',
    class: 'class',
    value: '0',
    percentage: '2.40',
    color: 'black'
  }
]
Run Code Online (Sandbox Code Playgroud)

我必须检查所有value属性是否为空。如果全部都是空的,我必须做一些其他动作,否则条件其他动作。

  const emptyValues = sortedData.map(value => value.key);
  console.log('emptyValues data', emptyValues);
Run Code Online (Sandbox Code Playgroud)

Ori*_*ori 5

使用Array.every(),检查所有value'0'(或任何你的空定义):

const data = [{"id":"508","class":"class1","value":"0","percentage":"8.90","color":"black"},{"id":"509","class":"class2","value":"0","percentage":"2.40","color":"black"},{"id":"510","class":"class3","value":"0","percentage":"56.40","color":"black"},{"id":"511","class":"class","value":"0","percentage":"2.40","color":"black"}]

const doEmptyAction = data.every(o => o.value === '0')

console.log(doEmptyAction)
Run Code Online (Sandbox Code Playgroud)