Home

Awesome

<!-- TITLE/ -->

getsetdeep

<!-- /TITLE --> <!-- BADGES/ -->

<span class="badge-githubworkflow"><a href="https://github.com/bevry/getsetdeep/actions?query=workflow%3Abevry" title="View the status of this project's GitHub Workflow: bevry"><img src="https://github.com/bevry/getsetdeep/workflows/bevry/badge.svg" alt="Status of the GitHub Workflow: bevry" /></a></span> <span class="badge-npmversion"><a href="https://npmjs.org/package/getsetdeep" title="View this project on NPM"><img src="https://img.shields.io/npm/v/getsetdeep.svg" alt="NPM version" /></a></span> <span class="badge-npmdownloads"><a href="https://npmjs.org/package/getsetdeep" title="View this project on NPM"><img src="https://img.shields.io/npm/dm/getsetdeep.svg" alt="NPM downloads" /></a></span> <br class="badge-separator" /> <span class="badge-githubsponsors"><a href="https://github.com/sponsors/balupton" title="Donate to this project using GitHub Sponsors"><img src="https://img.shields.io/badge/github-donate-yellow.svg" alt="GitHub Sponsors donate button" /></a></span> <span class="badge-thanksdev"><a href="https://thanks.dev/u/gh/bevry" title="Donate to this project using ThanksDev"><img src="https://img.shields.io/badge/thanksdev-donate-yellow.svg" alt="ThanksDev donate button" /></a></span> <span class="badge-patreon"><a href="https://patreon.com/bevry" title="Donate to this project using Patreon"><img src="https://img.shields.io/badge/patreon-donate-yellow.svg" alt="Patreon donate button" /></a></span> <span class="badge-liberapay"><a href="https://liberapay.com/bevry" title="Donate to this project using Liberapay"><img src="https://img.shields.io/badge/liberapay-donate-yellow.svg" alt="Liberapay donate button" /></a></span> <span class="badge-buymeacoffee"><a href="https://buymeacoffee.com/balupton" title="Donate to this project using Buy Me A Coffee"><img src="https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg" alt="Buy Me A Coffee donate button" /></a></span> <span class="badge-opencollective"><a href="https://opencollective.com/bevry" title="Donate to this project using Open Collective"><img src="https://img.shields.io/badge/open%20collective-donate-yellow.svg" alt="Open Collective donate button" /></a></span> <span class="badge-crypto"><a href="https://bevry.me/crypto" title="Donate to this project using Cryptocurrency"><img src="https://img.shields.io/badge/crypto-donate-yellow.svg" alt="crypto donate button" /></a></span> <span class="badge-paypal"><a href="https://bevry.me/paypal" title="Donate to this project using Paypal"><img src="https://img.shields.io/badge/paypal-donate-yellow.svg" alt="PayPal donate button" /></a></span> <br class="badge-separator" /> <span class="badge-discord"><a href="https://discord.gg/nQuXddV7VP" title="Join this project's community on Discord"><img src="https://img.shields.io/discord/1147436445783560193?logo=discord&amp;label=discord" alt="Discord server badge" /></a></span> <span class="badge-twitch"><a href="https://www.twitch.tv/balupton" title="Join this project's community on Twitch"><img src="https://img.shields.io/twitch/status/balupton?logo=twitch" alt="Twitch community badge" /></a></span>

<!-- /BADGES --> <!-- DESCRIPTION/ -->

Get and set nested variables of an object, includes support for Backbone Models

<!-- /DESCRIPTION -->

Usage

Complete API Documentation.

Example

// Import
import { setDeep, getDeep } from 'getsetdeep'

// Prepare
const obj = {
    a: {
        b: {
            c: 3,
        },
    },
}

// Get
console.log(getDeep(obj, 'a.b.c')) // 3
console.log(setDeep(obj, 'a.b.c', 4)) // 4
console.log(getDeep(obj, 'a.b.c')) // 4

Notes

Security

To satisfy the egos of some security researchers, just as you wouldn't do obj[prompt('some user input')] = 'value' don't do setDeep(obj, prompt('some user input'), 'value'), obviously. Rather than getsetdeep preventing __proto__ access, we assume the consumers of this library are intelligent enough to do what they intend.

<!-- INSTALL/ -->

Install

npm

Deno

import * as pkg from 'https://unpkg.com/getsetdeep@^5.6.0/edition-deno/index.ts'

Skypack

<script type="module">
    import * as pkg from '//cdn.skypack.dev/getsetdeep@^5.6.0'
</script>

unpkg

<script type="module">
    import * as pkg from '//unpkg.com/getsetdeep@^5.6.0'
</script>

jspm

<script type="module">
    import * as pkg from '//dev.jspm.io/getsetdeep@5.6.0'
</script>

Editions

This package is published with the following editions:

<!-- /INSTALL --> <!-- HISTORY/ -->

History

Discover the release history by heading on over to the HISTORY.md file.

<!-- /HISTORY --> <!-- BACKERS/ -->

Backers

Code

Discover how to contribute via the CONTRIBUTING.md file.

Authors

Maintainers

Contributors

Finances

<span class="badge-githubsponsors"><a href="https://github.com/sponsors/balupton" title="Donate to this project using GitHub Sponsors"><img src="https://img.shields.io/badge/github-donate-yellow.svg" alt="GitHub Sponsors donate button" /></a></span> <span class="badge-thanksdev"><a href="https://thanks.dev/u/gh/bevry" title="Donate to this project using ThanksDev"><img src="https://img.shields.io/badge/thanksdev-donate-yellow.svg" alt="ThanksDev donate button" /></a></span> <span class="badge-patreon"><a href="https://patreon.com/bevry" title="Donate to this project using Patreon"><img src="https://img.shields.io/badge/patreon-donate-yellow.svg" alt="Patreon donate button" /></a></span> <span class="badge-liberapay"><a href="https://liberapay.com/bevry" title="Donate to this project using Liberapay"><img src="https://img.shields.io/badge/liberapay-donate-yellow.svg" alt="Liberapay donate button" /></a></span> <span class="badge-buymeacoffee"><a href="https://buymeacoffee.com/balupton" title="Donate to this project using Buy Me A Coffee"><img src="https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg" alt="Buy Me A Coffee donate button" /></a></span> <span class="badge-opencollective"><a href="https://opencollective.com/bevry" title="Donate to this project using Open Collective"><img src="https://img.shields.io/badge/open%20collective-donate-yellow.svg" alt="Open Collective donate button" /></a></span> <span class="badge-crypto"><a href="https://bevry.me/crypto" title="Donate to this project using Cryptocurrency"><img src="https://img.shields.io/badge/crypto-donate-yellow.svg" alt="crypto donate button" /></a></span> <span class="badge-paypal"><a href="https://bevry.me/paypal" title="Donate to this project using Paypal"><img src="https://img.shields.io/badge/paypal-donate-yellow.svg" alt="PayPal donate button" /></a></span>

Sponsors

Donors

<!-- /BACKERS --> <!-- LICENSE/ -->

License

Unless stated otherwise all works are:

and licensed under:

<!-- /LICENSE -->