@deloittesolutions/stdlib
v1.5.0
Published
> Everything missing from the standard library
Downloads
24
Keywords
Readme
stdlib
Everything missing from the standard library
Install
Install the profile with npm
:
npm i -S @deloittesolutions/stdlib
Usage
Array
Flatten an array:
const stdlib = require('stdlib');
// stdlib.array.flatten(source);
const destination = stdlib.array.flatten([1, [2, 3], [4, 5], 6]);
// destination = [1, 2, 3, 4, 5, 6]
Create an array of numbers:
const stdlib = require('stdlib');
// stdlib.array.range(size);
const destination = stdlib.array.range(10);
// destination = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
Sample from an array:
const stdlib = require('stdlib');
// stdlib.array.sample([1,2,3,4])
const sample = stdlib.array.sample([1, 2, 3, 4])
// (sample in [1, 2, 3, 4]) === true
Element
Generate an ID:
const stdlib = require('stdlib');
// stdlib.element.generateId();
const id = stdlib.element.generateId();
// id = '1'
Executor
Debounce a function:
const stdlib = require('stdlib');
// stdlib.executor.debounce(function, wait);
const fn = stdlib.executor.debounce(() => { console.log('hello'); }, 150);
Memoize a function:
const stdlib = require('stdlib');
// stdlib.executor.memoize(function);
const fn = stdlib.executor.memoize(() => new Date());
const d1 = fn();
// d1 = '2017-04-11T10:25:18.161Z'
const d2 = fn();
// d2 = '2017-04-11T10:25:18.161Z' (d2 === d1)
Retry a function:
const stdlib = require('stdlib');
// stdlib.executor.retry(function, options);
const fn = stdlib.executor.retry(() => Promise.resolve(), {maxRetries: 5, retryTimeout: 1000});
Object
Clone an object:
const stdlib = require('stdlib');
// stdlib.object.clone(source);
const clone = stdlib.object.clone({foo: 'bar'});
// clone = {foo: 'bar'}
Merge various sources objects into a destination object:
const stdlib = require('stdlib');
// stdlib.object.merge(destination, ...sources);
const destination = stdlib.object.merge({foo: 'bar'}, {foo: 'baz', baz: [1, 2]}, {baz: [3]});
// destination = {foo: 'baz', baz: [3]}
Replace the properties of a destination object by the properties of a source object:
const stdlib = require('stdlib');
// stdlib.object.replace(destination, source);
const destination = stdlib.object.replace({foo: 'bar', baz: 1}, {foo: 'baz', bar: 2});
// destination = {foo: 'baz', bar: 2}
Update the properties of a destination object by the properties of various source objects:
const stdlib = require('stdlib');
// stdlib.object.update(destination, ...sources);
const destination = stdlib.object.update({foo: 'bar'}, {foo: 'baz', baz: [1, 2]}, {baz: [3]});
// destination = {foo: 'baz', baz: [3, 2]}
String
Convert a source object to camel case:
const stdlib = require('stdlib');
// stdlib.string.camelCase(source);
const destination = stdlib.string.camelCase('Hello World');
// destination = 'helloWorld'