lodash.get wrapper #tools
let get = require('lodash.get')
const getIt = function (...args) {
return action => {
let value = get.apply(this, args)
if (action && value !== void 0) {
return action(value)
} else {
return value
}
}
}
let obj = {
foo: 1,
bar: {
baz: 'some',
biz: "200",
boo: {
far: 'deep'
}
}
}
let far = getIt(obj, 'bar.boo.far')() // 'deep'
let biz = getIt(obj, ['bar', 'biz'])(biz => parseInt(biz) / 100) // 2