@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

Dependencies (0)

    Dev Dependencies (2)

    Package Sidebar

    Install

    npm i @ranfdev/deepobj

    Weekly Downloads

    14,120

    Version

    1.0.2

    License

    MIT

    Unpacked Size

    3.52 kB

    Total Files

    8

    Last publish

    Collaborators

    • ranfdev