Package Exports
- keyd
- keyd/index.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (keyd) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
keyd
A small library for using and manipulating key paths in JavaScript.
Installation
npm install --save keyd
const keyd = require('keyd');
Getting / Setting Values
Getting Values
keyd(obj).get('my.keypath');
Getting values in array and sub-arrays.
keyd(obj).get.all('my.keypath');
Setting Values
keyd(obj).set('my.keypath', value);
Manipulating Key Paths
Components
const components = keyd.components('my.key.path');
/* -> ['my','key','path'] */
Throws an error if input is not a string.
Joining
const keyPath = keyd.join(['my','key','path']);
/* -> 'my.key.path' */
Throws an error if input is not an array.
Appending Keys
const keyPath = keyd.append('my.key', 'path');
/* -> 'my.key.path' */
or
const keyPath = keyd.append('my', ['key', 'path']);
/* -> 'my.key.path' */
Both inputs can be either strings or arrays.
Last
Getting
const lastComponent = keyd.last('my.key.path');
/* -> 'path' */
Input can be a string or an array.
Removing
const keyPath = keyd.eatLast('my.key.path');
/* -> 'my.key' */
Input can be a string or an array.
First
Getting
const firstComponent = keyd.first('my.key.path');
/* -> 'my' */
Input can be a string or an array.
Removing
const keyPath = keyd.eatFirst('my.key.path');
/* -> 'key.path' */
or
const keyPath = keyd.eatFirst('my.key.path', 'my.key');
/* -> 'path' */
Input can be a string or an array.
Latter example with throw an error if second key path is not within the first.
Match
const within = keyd.within('my.key.path', 'my.key');
/* -> true */
const is = keyd.is('my.key.path', 'my.key');
/* -> false */
Both inputs can be either strings or arrays.
Options
All methods supports options, which is provided as an object as the last parameter.
The table below shows the supported key(s).
Name | Default value | Description |
---|---|---|
separator |
. |
A string that represents the separation characters of keys in a key path string. |
License
MIT (see LICENSE).