JSFiddle - React, Tailwind, and code Playground

by dpiret

JavaScript

var obj = `{
    "key1.key": "merciful",
    "key2": {
        "key2.key": "grateful"
    }
}`
var parseDOT = JSON.parse(obj, function (k, v) {
    if (k.search(".") != -1)
       this[k.replace(/\./g, 'DOT')] = v;
    else
        return v;
});
var parseE = JSON.parse(obj, function (k, v) {
    if (k.search(".") != -1)
       this[k.replace(/e/g, 'DOT')] = v;
    else
        return v;
});
document.write("Replacing dots truncates the object<pre>" +
               JSON.stringify(parseDOT, null, 4) + 
               "</pre>"+
               "Replacing anything else works like a charm<pre>" +
               JSON.stringify(parseE, null, 4) + 
               "</pre>");