Check whether an object owns deep properties
Super small implementation β only 160 bytes!
You could write this yourself, but then you'd have to write tests.
Supports ES Modules, CommonJS and UMD.
npm install dhas
import dhas from 'dhas';
const object = { a: { b: { c: null, d: undefined, e: 'string' } } };
// returns true even for null and undefined values
dhas(object, 'a.b.c'); // true
dhas(object, 'a.b.d'); // true
// first argument can be an object OR an array
dhas(object, 'a.b'); // true
dhas([0,1,2,3], '0'); // true
// second paramter can be a string (delineated by dots) OR an array of strings
dhas(object, 'a.b.c'); // true
dhas(object, ['a', 'b', 'c']); // true
For getting deep object properties, check out dlv
For setting deep object properties, check out dset
This library was heavily inspired by both!