如何计算每个项目的OCCURENCES的阵列中的多少? [英] How to count the number of occurences of each item in an array?

查看:266
本文介绍了如何计算每个项目的OCCURENCES的阵列中的多少?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个数组,如下所示,

  VAR ARR = ['AB','PQ','百万','AB','百万','AB']

预期结果

 改编['AB'] = 3
ARR ['PQ'] = 1
改编['MN'] = 2

试过如下,

  $。每个(ARR,功能(指数值){
    如果(值)
        ARR [值] =(resultSummary [值])? ARR [值] + 1:1;
});的console.log(arr.join(,));


解决方案

无需使用jQuery这个任务—这个例子将建立与每一个不同元件的occurencies的量的目的在阵列中

  VAR的obj = {};
对于(VAR I = 0,J = arr.length; I<焦耳;我++){
   OBJ [ARR [I] =(OBJ [改编[I]] || 0)+ 1;
}的console.log(OBJ);
/ **
 * {
 *AB:3,
 *PQ:1,
 *MN:2
 *}
 * /(OBJ ['百万'])的console.log; // 2

例如小提琴: http://jsfiddle.net/8Gt6V/

I have an array as follows,

var arr = ['ab','pq','mn','ab','mn','ab']

Expected result

arr['ab'] = 3
arr['pq'] = 1
arr['mn'] = 2

Tried as follows,

$.each(arr, function (index, value) {
    if (value) 
        arr[value] = (resultSummary[value]) ? arr[value] + 1 : 1;
});

console.log(arr.join(','));

解决方案

no need to use jQuery for this task — this example will build an object with the amount of occurencies of every different element in the array

var obj = { };
for (var i = 0, j = arr.length; i < j; i++) {
   obj[arr[i]] = (obj[arr[i]] || 0) + 1;
}

console.log(obj);
/**
 *  {
 *      "ab" : 3,
 *      "pq" : 1,
 *      "mn" : 2      
 *  }
 */

console.log(obj['mn']);  // 2

Example fiddle : http://jsfiddle.net/8Gt6V/

这篇关于如何计算每个项目的OCCURENCES的阵列中的多少?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆