UNPKG

1.01 kBJavaScriptView Raw
1import isArray from './is-array';
2import isFunction from './is-function';
3import groupBy from './group-by';
4/**
5 * 将数据分组成 map
6 * @param data
7 * @param condition
8 */
9export default function groupToMap(data, condition) {
10 if (!condition) {
11 return {
12 0: data,
13 };
14 }
15 if (!isFunction(condition)) {
16 // 如果是字符串,则按照 a*b 风格成数组
17 var paramscondition_1 = isArray(condition) ? condition : condition.replace(/\s+/g, '').split('*');
18 condition = function (row) {
19 var unique = '_'; // 避免出现数字作为Key的情况,会进行按照数字的排序
20 // 根据字段列表的值,拼接成 key
21 for (var i = 0, l = paramscondition_1.length; i < l; i++) {
22 unique += row[paramscondition_1[i]] && row[paramscondition_1[i]].toString();
23 }
24 return unique;
25 };
26 }
27 return groupBy(data, condition);
28}
29//# sourceMappingURL=group-to-map.js.map
\No newline at end of file