undefined key throws
From the readme:
//undefined obj or key returns undefined, unless a default is supplied
delve(undefined, 'a.b.c') === undefined;
delve(undefined, 'a.b.c', 'foo') === 'foo';
delve(obj, undefined, 'foo') === 'foo';
Likely broken by the inclusion of Array support. TBH I'm not sure if there's a better behaviour here - undefined could only really be stringified, which is super unintuitive. I'd kinda rather have it throw.
I agree. So should the docs be updated?
I ran across this recently in styled-system, and looked familiar. https://github.com/styled-system/styled-system/blob/6e00a16e0c53d865955c03df2d8d6ade8948bb2f/packages/core/src/index.js#L35
key = key && key.split ? key.split('.') : [key] seems to do the trick. thoughts @developit ?
delve(undefined || {}, 'a.b.c') === undefined
I think adding a default obj will be ok.