如何访问重复计数的javascript /打印稿

本文探讨了一种在数组中查找并计数重复元素的方法,使用JavaScript实现,具体介绍了如何通过遍历数组并利用对象存储元素出现次数来找出重复项及其出现频率。

我有一个数组的数据= > this.allNodeSets。 这个数组,我找到副本。 现在我想找到重复的计算。 发现重复计数的唯一方法就是= > itemCount.ball说

伪代码,

var randomArray = ["ball", "ball", "tree", "ball", "tree", "bus", "car"];
var itemCount = {};

randomArray.forEach(function(value){
    if(value in itemCount) itemCount[value] = itemCount[value] + 1;
    else itemCount[value] = 1;
}); 

找到计数- = >

 itemCount.ball 

我发现很难找到这个体数像上面做。 我的代码,

app.component.ts- Angular2 +

callFunctionSingleSelectedResult(){

allNodeSets = [
 ["claimIntimationRequestBody", "claimIntimationRequestHeader"],
 ["claimIntimationRequestBody", "claimIntimationRequestHeader"],
 ["claimIntimationRequestBody", "claimIntimationRequestBody"],
["claimIntimationRequestBody", "claimIntimationRequestHeader"],
 ["claimIntimationRequestBody", "claimIntimationResponseBody"],
 ["claimIntimationRequestHeader", "claimIntimationRequestBody"],
 ["claimIntimationRequestHeader", "claimIntimationRequestHeader"],
 ["claimIntimationRequestHeader", "claimIntimationResponseBody"],

 ["claimIntimationRequestBody", "claimIntimationRequestHeader"],

 ["claimIntimationRequestBody", "claimIntimationResponseBody"],
 ["claimIntimationRequestHeader", "claimIntimationResponseBody"],
]


       var duplicateResult = this.findDuplicates(this.allNodeSets);

       console.log("inside duplicates, result= ", duplicateResult);



//------------[1] count duplicates


              var itemCount = {};

              duplicateResult.forEach(function (value) {
                if (value in itemCount)
                  itemCount[value] = itemCount[value] + 1;
                else itemCount[value] = 1;


              });

              console.log("duplicateResult, forEach = count = ", 
           itemCount)

              for (var i = 0; i < duplicateResult.length; i++) {

                console.log(" individual count = ", itemCount)
              }

}


 // finding Duplicates

  findDuplicates(arr) {
    var len = arr.length,
      out = [],
      counts = {};

    for (var i = 0; i < len; i++) {
      var item = arr[i];
      counts[item] = counts[item] >= 1 ? counts[item] + 1 : 1;
      if (counts[item] > 1) {
        out.push(item);
      }
    }

    return out;
  }

  // Function duplicate ends

输出-

 duplicateResult = 
    [ 
    ["claimIntimationRequestBody","claimIntimationRequestHeader"],
    ["claimIntimationRequestBody", "claimIntimationRequestHeader"], 
    ["claimIntimationRequestBody","claimIntimationRequestHeader"] ,
    ["claimIntimationRequestBody","claimIntimationResponseBody"],
    ["claimIntimationRequestHeader", "claimIntimationResponseBody"] , 
    ["claimIntimationRequestHeader" "claimIntimationResponseBody"] 
    ]



    duplicate count, counter = {["claimIntimationRequestBody","claimIntimationRequestHeader"]: 3, 

["claimIntimationRequestBody","claimIntimationRequestBody"]: 1, 

["claimIntimationRequestBody","claimIntimationResponseBody"]: 1}

我搜查了整个网络,但没有其他的工作方式,我能够确定一个代码,给出了计数以其它方式。 请帮助确定一种方式获取节点数或者是有办法获取节点数。 我无法这样做。

如果我这样做

 for (var i = 0; i < duplicateResult.length; i++) {

                console.log(" individual count = ", itemCount.duplicateResult)
              }

我得到错误的。

Property 'duplicateResult' does not exist on type '{}'.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值