UNPKG

ut2

Version:

一个现代 JavaScript 实用工具库。[点击查看在线文档]。

24 lines (20 loc) 634 B
'use strict'; var forEach = require('./forEach.js'); var identity = require('./identity.js'); var createIteratee = require('./internals/createIteratee.js'); var groupBy = function (collection, iteratee) { if (iteratee === void 0) { iteratee = identity; } var result = {}; var internalIteratee = createIteratee(iteratee); forEach(collection, function (item, index, arr) { var key = internalIteratee(item, index, arr); if (key in result) { result[key].push(item); } else { result[key] = [item]; } }); return result; }; module.exports = groupBy;