Nocturnal Programmer's Machine

    @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

    Keywords

    none

    Install

    npm i @ranfdev/deepobj

    DownloadsWeekly Downloads

    10,183

    Version

    1.0.2

    License

    MIT

    Unpacked Size

    3.52 kB

    Total Files

    8

    Last publish

    Collaborators

    • ranfdev