Skip to content

👷‍♀️Composition and Decomposition of JavaScript Objects using dot notation

License

Notifications You must be signed in to change notification settings

ericadamski/dot-mutation

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

dot-mutation

👷‍♀️Composition and Decomposition of JavaScript Objects using dot notation.

Install

yarn

yarn add dot-mutation

or npm

npm i dot-mutation

Usage

Edit Example

deconstruct

function deconstruct(o: Object): Object

Returns a single level deep JavaScript Object where each key is a path, using dot notation, to the value of the input Object.

construct

function construct(o: Object): Object

Returns a JavaScript Object where each key from the input Object is a path description to the output object. (ie. for input Object o a key of o['a.b.c'] results in a path of o.a.b.c)

const { construct, deconstruct } = require('dot-mutation');

const obj = {
  a: {
    b: {
      c: 'value'
    },
    d: [
      {
        nested: 'values'
      }
    ]
  },
  e: 'value'
};

console.log(deconstruct(obj));
// Outputs
// ===================
// {
//   'a.b.c': 'value',
//   'a.d': [
//     {
//       nested: 'values'
//     }
//   ],
//   'e' : 'value'
// }

const deconstructed = {
  'a.b.c': 'value',
  'a.d': [
    {
      nested: 'values'
    }
  ],
  e: 'value'
};

console.log(construct(deconstructed));
// Outputs
// ===================
// {
//   a: {
//     b: {
//       c: 'value'
//     }
//     d: [
//       {
//         nested: 'values'
//       }
//     ]
//   },
//   e: 'value'
// }

About

👷‍♀️Composition and Decomposition of JavaScript Objects using dot notation

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published