Skip to content

🚧 Get and set dot-notated properties within an object.

License

Notifications You must be signed in to change notification settings

robinvdvleuten/shvl

Folders and files

NameName
Last commit message
Last commit date
Jan 7, 2021
May 2, 2022
Jan 7, 2021
Aug 4, 2020
Oct 30, 2019
May 2, 2022
Apr 14, 2019
May 2, 2022
Aug 29, 2022
May 2, 2022

Repository files navigation

shvl

Get and set dot-notated properties within an object.


Build Status NPM version NPM downloads MIT license

PRs Welcome

Sponsored by The Webstronauts

Installation

npm install --save shvl

The UMD build is also available on unpkg:

<script src="//unpkg.com/shvl/dist/shvl.umd.js"></script>

This exposes the shlv object as a global.

Usage

import * as shvl from 'shvl';

let obj = {
	a: {
		b: {
			c: 1
			d: undefined
			e: null
		}
	}
};

// Use dot notation for keys
shvl.set(obj, 'a.b.c', 2);
shvl.get(obj, 'a.b.c') === 2;

// Or use an array as key
shvl.get(obj, ['a', 'b', 'c']) === 1;

// Returns undefined if the path does not exist and no default is specified
shvl.get(obj, 'a.b.c.f') === undefined;

Changelog

Please see CHANGELOG for more information on what has changed recently.

Contributors ✨

Thanks goes to these wonderful people (emoji key):


Robin van der Vleuten

πŸ’¬ πŸ’» πŸ“– πŸ’‘ πŸ€” πŸš‡ πŸ‘€ ⚠️

ajenkinski

πŸ’»

Matheus Vrech

πŸ’»

This project follows the all-contributors specification. Contributions of any kind welcome!

License

The MIT License (MIT). Please see License File for more information.