dlv
dlv copied to clipboard
Shorter version
Smallest possible implementation: only 120 bytes.
There's possibly smaller version:
export dlv = (obj, key) => (key.split ? key.split('.') : key).reduce((a,b)=>b?a?.[b]:a,obj)
Or even smaller (71b):
export default (obj, key) => (key.split?.('.') || key).reduce((a,b)=>a?.[b],obj)
Optional chaining support: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Optional_chaining
that's not the point
export default (obj, key) => (key.map?key:key.split('.')).reduce((a,b)=>a?a[b]:a,obj)