GithubHelp home page GithubHelp logo

get-object's Introduction

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.

get-object's People

Contributors

jonschlinkert avatar

Stargazers

Cat  avatar NoScripter avatar Jerzerak avatar Ian Macalinao avatar Charlike Mike Reagent avatar  avatar

Watchers

 avatar Brian Woodward avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.