1.1.3 • Published 8 years ago
deepdrain v1.1.3
deepdrain
deep is a utility function for traversing properties on objects and arrays.
If an intermediate property is either null or undefined, it is instead returned. The purpose of this function is to simplify extracting properties from a chain of maybe-typed properties.
This module exists as a stop-gap solution because JavaScript does not currently support optional chaining.
Simpler, smaller and faster than lodash/get , facebook's idx and rambda methods. Also f*ck underscore/propertyOf.
Install
npm
npm install deepdrain yarn
yarn add deepdrainDescription
deep(obj, path, defaultValue)
obj: Object | Array
path: Array
defaultValue: anyExample
var deep = require('deepdrain')
var obj = {
animal: {
cat: ['meow', 'miau', 'nya-ong', 'meu'],
dog: 'woof'
}
}
deep(obj, ['animal', 'cat', '2'])
// nya-ong
deep(obj, ['animal', 'age'], 5)
// 5