nested-object-to-key-value
Version:
A lightweight utility to flatten nested JavaScript objects into dot-notation key-value pairs and unflatten them back. Perfect for handling complex configurations, form data, or API transformations.
15 lines (14 loc) • 442 B
JavaScript
export function unflattenJson(obj) {
const result = {};
for (const [flatKey, value] of Object.entries(obj)) {
const keys = flatKey.split(".");
let current = result;
for (let i = 0; i < keys.length - 1; i++) {
const key = keys[i];
current[key] = current[key] || {};
current = current[key];
}
current[keys[keys.length - 1]] = value;
}
return result;
}