get-object

Get a property from an object using dot (object path) notation.


Keywords
check, dot, find, has, hasOwn, is, is-object, isobject, javascript, js, key, keys, node.js, notation, object, pick, prop, properties, property, props, string, type, type-of, typeof, util, utilities, utility, utils, value
License
MIT
Install
npm install get-object@0.2.0

Documentation

get-object NPM version

Get a property from an object using dot (object path) notation.

Install

Install with npm

$ npm i get-object --save

Usage

var get = require('get-object');

get({a: {b: {c: 'd'}}}, 'a.b.c');
//=> {c: 'd'}

If you want only the value, not key/value, use get-value.

get a value from an object

get({a: 'aaa', b: {c: 'd'}}, 'a');
//=> {a: 'aaa'}

get({a: 'a', b: {c: 'd'}}, 'b.c');
//=> {c: 'd'}

get a value from an array

get(['a', 'b', 'c'], '0');
//=> ['a']

get(['a', 'b', 'c'], 2);
//=> ['c']

get nested value from an array

get({a: ['a', 'b', 'c']}, 'a.0');
//=> ['a']

get({a: ['a', 'b', 'c']}, 'a.2');
//=> ['c']

get({a: {b: ['a', 'b', 'c']}}, 'a.b.2');
//=> ['c']

support array notation

get({a: ['a', 'b', 'c']}, 'a[0]');
//=> ['a']

get({a: ['a', 'b', 'c']}, 'a[2]');
//=> ['c']

get({a: {b: ['a', 'b', {c: 'd'}]}}, 'a.b[2].c');
//=> {c: 'd'}

Related projects

  • del-value: Delete deeply nested value from an object using dot notation like a.b.c.x and return the… more | homepage
  • get-value: Use property paths (a.b.c) to get a nested value from an object. | homepage
  • set-value: Create nested values and any intermediaries using dot notation ('a.b.c') paths. | homepage
  • union-value: Set an array of unique values as the property of an object. Supports setting deeply… more | homepage
  • unset-value: Delete nested properties from an object using dot notation. | homepage
  • upsert-value: Update or set nested values and any intermediaries with dot notation ('a.b.c') paths. | homepage

Running tests

Install dev dependencies:

$ npm i -d && npm test

Contributing

Pull requests and stars are always welcome. For bugs and feature requests, please create an issue.

Author

Jon Schlinkert

License

Copyright © 2015 Jon Schlinkert Released under the MIT license.


This file was generated by verb-cli on August 27, 2015.