12345678910111213141516171819202122232425262728293031323334353637 |
- function chunk(array, size = 1) {
- return Array.range(Math.ceil(array.length / size)).map(i => array.slice(i * size, i * size + size));
- }
- function range(start, stop = undefined, step = 1) {
- if (!stop) {
- stop = start;
- start = 0;
- }
- return start < stop
- ? Array(Math.ceil((stop - start) / step))
- .fill()
- .map((_, i) => start + i * step)
- : [];
- }
- function unique(array, op = x => x) {
- return array.filter((obj, i) => array.findIndex(entry => op(obj) === op(entry)) === i);
- }
- function zip(...args) {
- return Array(Math.max(...args.map(arg => arg.length)))
- .fill(null)
- .map((_, i) => args.map(arg => arg[i]));
- }
- function capitalize(str) {
- return str.charAt(0).toUpperCase() + str.slice(1);
- }
- module.exports = {
- chunk,
- range,
- unique,
- zip,
- capitalize,
- };
|