我在数据库中有如下数据

vm.result = [
{
  "_id": ObjectId("57c036a75f7635e80c5d5bc8"),
  "sharedPersonId": ObjectId("570dec75cf30bf4c09679deb"),
  "notificationDetails": [
    {
      "userId": "570dfae0e79bd384255b6471",
      "userName": "Vinay",
      "isRed": true
    }
  ]
},
{
  "_id": ObjectId("57bef418600b4350280f0b2f"),
  "sharedPersonId": ObjectId("570dec75cf30bf4c09679deb"),
  "notificationDetails": [
    {
      "userId": "56fe44836ce2226431f5388f",
      "userName": "Hemanth",
      "isRed": true
    }
  ]
 },
 {
   "_id": ObjectId("57bef1a1d985a82c24e0c49b"),
   "sharedPersonId": ObjectId("570dec75cf30bf4c09679deb"),
   "notificationDetails": [
     {
       "userId": "57443657ee5b5ccc30c4e6f8",
       "userName": "Kevin",
       "isRed": true
     }
   ]
  }
]


要访问isRed,我已经使用了如下所示的angular.js文件中的循环

for(var key in vm.result){
  for(var key1 in vm.result[key].notificationDetails){
     console.log(vm.result[key].notificationDetails[key1].isRed);
  }
}


结果显示为真
           真正
           真正
isRed包含truefalse的可能性。我想知道有多少个真值。
如何解决这个问题,请帮帮我。

最佳答案

var trueCount = 0;
var falseCount = 0;
for(var key in vm.result){
  for(var key1 in vm.result[key].notificationDetails){
     if(vm.result[key].notificationDetails[key1].isRed){
         trueCount ++ ;
     }else{
         falseCount ++;
     }
  }
}


这样,您就可以跟踪对与错。

关于javascript - 计算数组中相同值的数量,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39200642/

10-10 00:29