countBy.js
372 Bytes
define(['./_group', './_has'], function (_group, _has) {
// Counts instances of an object that group by a certain criterion. Pass
// either a string attribute to count by, or a function that returns the
// criterion.
var countBy = _group(function(result, value, key) {
if (_has(result, key)) result[key]++; else result[key] = 1;
});
return countBy;
});