I\'m watching out for a shortcut way to use values from a dictionary as an internal reference inside the dictionary. The code shows what I mean:
var dict =
You could use mustache and define your json as a "mustache template", then run mustache to render the template. Take into account you would need to run (n) times if you have nested dependencies. In this case you have 3 dependencies ABC --> AB --> A.
var mustache = require('mustache');
var obj = {
A : 'A',
AB : '{{A}}' + 'B',
ABC : '{{AB}}' + 'C'
}
function render(stringTemplate){
while(thereAreStillMustacheTags(stringTemplate)){
stringTemplate = mustache.render(stringTemplate, JSON.parse(stringTemplate));
}
return stringTemplate;
}
function thereAreStillMustacheTags(stringTemplate){
if(stringTemplate.indexOf('{{')!=-1)
return true;
return false;
}
console.log(render(JSON.stringify(obj)));
And the output is:
{"A":"A","AB":"AB","ABC":"ABC"}