So Ive got the following javascript which contains a key/value pair to map a nested path to a directory.
function createPaths(aliases, propName, path) {     aliases.set(propName, path); }  map = new Map();  createPaths(map, 'paths.aliases.server.entry', 'src/test'); createPaths(map, 'paths.aliases.dist.entry', 'dist/test');   Now what I want to do is create a JSON object from the key in the map.
It has to be,
paths: {   aliases: {     server: {       entry: 'src/test'     },     dist: {       entry: 'dist/test'     }   } }   Not sure if there is an out of a box way to do this. Any help is appreciated.
We can convert a Map to JSON object using the toJSONString() method(static) of org. json. simple. JSONValue.
To convert a Map to an object, call the Object. fromEntries() method passing it the Map as a parameter, e.g. const obj = Object. fromEntries(map) . The Object.
Given in MDN, fromEntries() is available since Node v12:
const map1 = new Map([   ['foo', 'bar'],   ['baz', 42] ]);  const obj = Object.fromEntries(map1); // { foo: 'bar', baz: 42 }  For converting object back to map:
const map2 = new Map(Object.entries(obj)); // Map(2) { 'foo' => 'bar', 'baz' => 42 } 
                        I hope this function is self-explanatory enough. This is what I used to do the job.
/*  * Turn the map<String, Object> to an Object so it can be converted to JSON  */ function mapToObj(inputMap) {     let obj = {};      inputMap.forEach(function(value, key){         obj[key] = value     });      return obj; }   JSON.stringify(returnedObject) 
                        If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With