const obj = {
vt_core_random: {
user_details: {
first_name: "xyz",
last_name: "abc",
groups: [
{
id: 1,
group_type: "EXT"
},
{
id: 2,
group_type: "INT"
}
],
address_type: {
city_name: "nashik",
state: {
code_name: "MH",
name: "Maharashtra"
}
}
}
}
};
const toCamel = (str) => {
return str.replace(/([-_][a-z])/ig, ($1) => {
return $1.toUpperCase()
.replace('-', '')
.replace('_', '');
});
};
const isObject = function (obj) {
return obj === Object(obj) && !Array.isArray(obj) && typeof obj !== 'function';
};
const keysToCamel = function (obj) {
if (isObject(obj)) {
const n = {};
Object.keys(obj)
.forEach((k) => {
n[toCamel(k)] = keysToCamel(obj[k]);
});
return n;
} else if (Array.isArray(obj)) {
return obj.map((i) => {
return keysToCamel(i);
});
}
return obj;
};
console.log(keysToCamel(obj));
Run code snippetHide results