从数组中计算出每个数的个数

学习到一个新办法

'use strict';

function grouping_count(collection) {
  return collection.reduce((p,k) => (p[k]++ || (p[k] = 1),p),{});
}

module.exports = grouping_count;
 
  
测试文件
 
  
'use strict';

var grouping_count = require("../../practices/filter/grouping_count.js");

describe('grouping_count', function() {

  var collection = [1,1,1,1,2,3,1,3,4,2,3,1,3,4,2];

  iit('collection中计算出每个数的个数', function() {
    var result = grouping_count(collection);

    expect(result).toEqual({'1':6, '2':3, '3':4, '4':2});
  })
});


你可能感兴趣的:(reduce)