dot-wild-tiny
Use powerful dot notation (dot path + wildcard) to access properties of JSON.
If you need to do set or delete, use dot-wild which has all functions.
Table of Contents
Install
$ npm install dot-wild-tiny --save
$ yarn add dot-wild-tiny
Usage
import * as dot from 'dot-wild-tiny';
dot.get({ foo: { bar: 'baz' } }, 'foo.bar');
dot.get({ 'foo.bar': 'baz' }, 'foo\\.bar');
dot.get({ 'foo.bar': 'baz' }, 'notfound', 'default');
const authorData = {
authors: [
{ username: 'tsuyoshiwada', profile: { age: 24 } },
{ username: 'sampleuser', profile: { age: 30 } },
{ username: 'foobarbaz', profile: { age: 33 } }
]
};
dot.get(authorData, 'authors.*.username');
dot.get(authorData, 'authors.*.profile.age');
dot.forEach(postData, 'data.posts.*.id', (value, key, context, path, data) => {
});
dot.map(postData, 'data.tags.*.name', (value, key, context, path, data) => {
return `${dot.get(data, path)} === ${value} (${key})`;
});
Contribute
- Fork it!
- Create your feature branch: git checkout -b my-new-feature
- Commit your changes: git commit -am 'Add some feature'
- Push to the branch: git push origin my-new-feature
- Submit a pull request :D
Bugs, feature requests and comments are more than welcome in the issues.
Related projects
License
MIT © tsuyoshiwada