select-keys-js

2.1.0 • Public • Published

select-keys-js

Select values from an object. Inspired by GraphQL.

Usage

const select = require('select-keys-js')
 
// Simple Example
const obj = { a: 1, b: 2 }
const query = select(`{a b c}`)
 
query(obj)
// returns
{ a: 1, b: 2, c: undefined }
 
// Nested Object
const obj = {
  a: 1,
  b: { c: 2 }
  d: [{e: 4, f: 5}, {e: 6, f: 7}]
}
const query = select(`{
  a
  b { c x }
  d { e }
}`)
 
query(obj)
// returns
{
  a: 1,
  b: { c: 2, x: undefined }
  d: [{
    e: 4
  }, {
    e: 6
  }]
}

Available options

const query = select(`{a b { c d } }`, {
  // console log the query object (default false)
  debug: false,
  // if object property at a given key is undefined,
  // then set it to undefined (default true)
  showUndefined: true
})
 
// Example
const obj = { a: 1 }
const query = select(`{a b { c d } }`, { showUndefined: true })
query(obj)
// returns
{
  a: 1,
  b: {
    c: undefined,
    d: undefined
  }
}
 
const query = select(`{a b { c d } }`, { showUndefined: false })
query(obj)
// returns
{ a: 1 }

License

MIT

Package Sidebar

Install

npm i select-keys-js

Weekly Downloads

2

Version

2.1.0

License

MIT

Unpacked Size

7.76 kB

Total Files

5

Last publish

Collaborators

  • t4sk