javascript - 如何在具有对象的 React 应用程序中循环遍历 javascript 数组并获取具有特定值的属性的计数

标签 javascript arrays loops javascript-objects

我有一个 javascript 数组,其中嵌套了对象。

[{
    "MonitoringState": "disabled",
    "State_Code": 16,
    "State_Name": "running",
    "EbsOptimized": false,
    "EnaSupport": true,
    "SourceDestCheck": true,
    "SpotInstanceRequestId": "None",
    "SriovNetSupport": "None",
    "StateReason_Code": "None",
    "StateReason_Message": "None"
  },
  {
    "MonitoringState": "disabled",
    "State_Code": 16,
    "State_Name": "stopped",
    "EbsOptimized": false,
    "EnaSupport": true,
    "SourceDestCheck": true,
    "SpotInstanceRequestId": "None",
    "SriovNetSupport": "None",
    "StateReason_Code": "None",
    "StateReason_Message": "None"
  },
  {
    "MonitoringState": "disabled",
    "State_Code": 16,
    "State_Name": "running",
    "EbsOptimized": false,
    "EnaSupport": true,
    "SourceDestCheck": true,
    "SpotInstanceRequestId": "None",
    "SriovNetSupport": "None",
    "StateReason_Code": "None",
    "StateReason_Message": "None"
  },
  {
    "MonitoringState": "disabled",
    "State_Code": 16,
    "State_Name": "stopped",
    "EbsOptimized": false,
    "EnaSupport": true,
    "SourceDestCheck": true,
    "SpotInstanceRequestId": "None",
    "SriovNetSupport": "None",
    "StateReason_Code": "None",
    "StateReason_Message": "None"
  },
  {
    "MonitoringState": "disabled",
    "State_Code": 16,
    "State_Name": "running",
    "EbsOptimized": false,
    "EnaSupport": true,
    "SourceDestCheck": true,
    "SpotInstanceRequestId": "None",
    "SriovNetSupport": "None",
    "StateReason_Code": "None",
    "StateReason_Message": "None"
  },
  {
    "MonitoringState": "disabled",
    "State_Code": 16,
    "State_Name": "running",
    "EbsOptimized": false,
    "EnaSupport": true,
    "SourceDestCheck": true,
    "SpotInstanceRequestId": "None",
    "SriovNetSupport": "None",
    "StateReason_Code": "None",
    "StateReason_Message": "None"
  }
]

我想循环遍历这个并获取正在运行和已停止的 State_Name 数量。我知道我有 6 个正在运行和 2 个已停止

所以我希望我的html显示“有4个正在运行,2个已停止”。该对象实际上更大,我在 React 应用程序中执行此操作。我有很多特性,我想做同样的事情。只是需要一个好的模式。

实现这一目标的良好模式是什么?

最佳答案

你可以这样做:

const runningCount = records.filter(r => r.State_Name === 'running').length

对于停止,你可以这样做:

const stoppedCount = records.filter(r =>r.State_Name === 'stopped').length

然后对于您的模板,只需执行以下操作:

<span>There are {runningCount} running and {stoppedCount} stopped. </span>

变量记录基本上就是你的数组。

关于javascript - 如何在具有对象的 React 应用程序中循环遍历 javascript 数组并获取具有特定值的属性的计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50400085/

相关文章:

javascript - Knockout Menu绑定(bind)切换 View 并更改css

javascript - Wordpress - 使用 JS 而不是 PHP 显示随机帖子

javascript - 如何转换这些字符?

javascript - Materialise Cssmodal showing $(..)leanmodal is not a function 错误

python - 在 numpy 中,将 3 维数组的第二维乘以 1 维数组的最快方法是什么?

python - 不同大小数组的 Numpy 运算

JAVA FileOutputStream 覆盖最后一个字符

java - 数组程序

python - 如果循环更新其自身之外的内容 - 如何构建等效的或 lambda/列表理解?

bash - 在 Bash 中模拟 do-while 循环