group-object-array
v1.0.0
Published
Ultra tiny library to group array of objects based on multiple properties
Downloads
305
Maintainers
Readme
groupBy
Ultra tiny library to group array of objects based on multiple properties
Getting Started
If you are using npm
$ npm install --save group-object-array
or include index.js
manually as
<script src="index.js" charset="utf-8"></script>
Usage
const groupBy = require('group-object-array');
var result = groupBy([{"a":1,"b":{"c":"C"}},{"a":2,"b":{"c":"D"}},{"a":1,"b":{"c":"C"}},{"a":1,"b":{"c":"A"}}], 'a');
or groupBy(test, ['a', 'b.c']);
//groupBy(test, ['a', 'b.c']) returns
[{"key":"1","children":[{"key":"C","children":[{"a":1,"b":{"c":"C"}},{"a":1,"b":{"c":"C"}}]},{"key":"A","children":[{"a":1,"b":{"c":"A"}}]}]},{"key":"2","children":[{"key":"D","children":[{"a":2,"b":{"c":"D"}}]}]}]
For browser environments, the library exports a global arrayGroup
, which can be used in a similar fashion,
arrayGroup(test, ['a', 'b.c']);
// returns the grouped 'test' array
API
groupBy(array, order)
Groups and returns an array.
array
Type: Array
Default: none
Array to be grouped.
order
Type: String | Array
Default: none
The priority order which grouping is to be performed. A single string value or array of strings.
License
MIT © The Half Blood Prince