Get, set, or remove a property from a nested object using a separator of your choosing
Built with β€οΈ by Tiaan and contributors
Based and inspired by dot-prop. Allows you to get, set, or remove a property from a nested object using a separator of your choosing. Support for escaping.
$ npm install --save sep-prop
Or
$ yarn add sep-prop
const prop = require('sep-prop')
const obj = {
foo: {
bar: {
baz: 5
},
'oof/bax': {
rab: 'zab'
}
}
}
console.log(prop.get(obj, 'foo/bar')) // {baz: 5}
console.log(prop.get(obj, 'foo$$bar', {sep: '$$'})) // {baz: 5}
console.log(prop.get(obj, 'foo.bar', {sep: '.'}))
console.log(prop.get(obj, 'foo/oof$$/bax', {escape: '$$'})) // {rab: 'zab'}
console.log(prop.set(obj, 'foo/bar', 'Hi')) //{ foo: { bar: 'Hi', 'oof/bax': { rab: 'zab' } } }
console.log(prop.set(obj, 'foo/bar/baz', 5)) //{ foo: { bar: { baz: 5 }, 'oof/bax': { rab: 'zab' } } }
console.log(prop.remove(obj, 'foo/bar')) // true
console.log(obj) // { foo: { 'oof/bax': { rab: 'zab' } } }
Retrieve nested property from object.
Parameters
Set a property on a object.
Parameters
Remove property from object.
Parameters
Contributions are welcome. Please open up an issue or create PR if you would like to help out.
Note: If editing the README, please conform to the standard-readme specification.
Licensed under the MIT License.