JSFiddle - React, Tailwind, and code Playground
by Danny Michaelis
JavaScript
var flattenObject = function (ob) {
var toReturn = ob;
for (var i in ob) {
if (!ob.hasOwnProperty(i)) continue;
if ((typeof ob[i]) == 'object') {
var flatObject = flattenObject(ob[i]);
for (var x in flatObject) {
if (!flatObject.hasOwnProperty(x)) continue;
toReturn[i + '.' + x] = flatObject[x];
}
} else {
toReturn[i] = ob[i];
}
}
return toReturn;
}
var obj = {
x: 1,
y: 'a',
z: {
eks: 1,
why: 'a',
zee: {
punchLine: 'orange you glad i didn\'t say banana'
}
}
};
console.log(flattenObject(obj));
console.log(flattenObject(obj)['z.zee.punchLine'])