Javascript 从对象计算状态并显示结果

Javascript 从对象计算状态并显示结果,javascript,angularjs,Javascript,Angularjs,请告诉我如何计算对象的状态数,并在countStatus中显示结果 var objs = { "Name A": [ { "id": 3, "status": "allow" }, { "id": 5, "status": "new" }, { "

请告诉我如何计算对象的状态数,并在
countStatus
中显示结果

var objs = {
  "Name A": [
    {
      "id": 3,
      "status": "allow"
    },
    {
      "id": 5,
      "status": "new"
    },
    {
      "id": 8,
      "status": "new"
    }
  ],
  "Name B": [
    {
      "id": 7,
      "status": "new"
    }
  ]
}

您可以使用
Array.prototype.reduce()
方法。下面的代码显示了如何创建所需的结果

const objs={
“命名A”:[
{
id:3,
状态:“允许”,
},
{
id:5,
状态:'新',
},
{
id:8,
状态:'新',
},
],
“姓名B”:[
{
id:7,
状态:'新',
},
],
};
const ret=Object.keys(objs.map)(x)=>{
返回{
[x] :Object.values(objs[x]).reduce((prev,c)=>{
常数p=上一个;
p[c.状态]=p[c.状态]| 0;
p[c.状态]+=1;
返回p;
}, {}),
};
});

控制台日志(ret)如何将其输出到表单
{{key}{{item.status}}:{{countStatus}
@j.ss检查下面的代码如何打印并将
ret
添加到您的作用域中。
<div ng-repeat="(key, list) in objs">
  {{key}}
  <div ng-repeat="item in list">
     {{item.status}} : {{countStatus}}
  </div>
</div>
Name A
allow : 1
new : 2

Name B
new : 1