@ranfdev/deepobj

1.0.2 • Public • Published

deepobj(action, obj, path)

Get, set, delete or do what you want with a deep object (it keeps the object reference). inspired from dlv and dset

Install:

npm i @ranfdev/deepobj

Examples:

import deepobj from "@ranfdev/deepobj"
const objectToTest = {a: {b: {c: {d: 2}}}}


// define some basic actions

const get = (obj, prop) => obj[prop];
const set = n => (obj, prop) => (obj[prop] = n);

// You can do what you want, even deleting the nested object
const del = (obj, prop) => delete obj[prop];

// use them
deepobj(get, objectToTest, 'a.b.c.d') // 2
deepobj(set(10), objectToTest, 'e.f.g')

console.log(objectToTest.e.f.g) //10

Why i made this

dlv only returns the value of the nested object. I needed a way to get the reference of the nested object

Dependents (3)

Package Sidebar

Install

npm i @ranfdev/deepobj

Weekly Downloads

14,444

Version

1.0.2

License

MIT

Unpacked Size

3.52 kB

Total Files

8

Last publish

Collaborators

  • ranfdev