Nighttime Possum Meandering
    Share your code. npm Orgs help your team discover, share, and reuse code. Create a free org »

    deep-get-setpublic

    deep-get-set

    Set and get values on objects via dot-notation strings.

    testling badge

    Example

    var deep = require('deep-get-set');
     
    var obj = {
      foo: {
        bar: 'baz',
        'bar.baz': 'qux'
      }
    };
     
    // Get
    console.log(deep(obj, 'foo.bar'));
      // => "baz"
     
    // Get with array
    console.log(deep(obj, ['foo', 'bar.baz']));
      // => "qux"
     
    // Set
    deep(obj, 'foo.bar', 'hello');
    console.log(obj.foo.bar);
      // => "hello"
     
    // Set with array
    deep(obj, ['foo', 'bar.baz'], 'goodbye');
    console.log(obj.foo['bar.baz']);
      // => "goodbye"

    API

    deep(object, path[, value])

    Where path is a dot-notation string foo.bar or an array of strings.

    • If value is passed it will be set on the path.
    • Set deep.p = true if you want non-existent paths to be initialized.
    • If you want to unset (or delete), pass undefined as the value.

    Installation

    With npm do:

    npm install deep-get-set

    Note

    There's a dozen modules like this on npm. This is a fork from @juliangruber's deep-access module, with a big portion of code directly copied from here: https://github.com/substack/js-traverse/blob/master/index.js#L11-L18.

    Similar modules:

    License

    MIT

    install

    npm i deep-get-set

    Downloadsweekly downloads

    1,865

    version

    1.1.0

    license

    MIT

    repository

    githubgithub

    last publish

    collaborators

    • avatar