1.0.0 • Published 7 years ago

sep-prop v1.0.0

Weekly downloads
3
License
MIT
Repository
github
Last release
7 years ago

About

Based and inspired on dot-prop. Allows you to get, set, or remove a property from a nested object using a separator of your choosing. Support for escaping.

Install

$ npm install --save sep-prop

Or

$ yarn add sep-prop

Usage

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' } } }

API

get

Retrieve nested property from object.

Parameters

set

Set a property on a object.

Parameters

remove

Remove property from object.

Parameters

Contribute

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.

License

Licensed under the MIT License.