// Лучший и быстрый способ решения '
Object.entries(data).reduce((r, [k, v]) => {
медленнее с большим json.
Бенчмарк
НЕТ БОЛЬШЕ L OOP ЗА Object.entries()
const input = { a: { b: 22, c: "hello", d: { f: 10 } }, e: 456 };
function flat(data, key = "", result = []) {
for (let k in data) {
if (typeof data[k] === "object") {
flat(data[k], key + k + ".", result);
} else result.push({ [key + k]: data[k] });
}
return result;
}
console.log(flat(input));
const input = { a: { b: 22, c: "hello", d: { f: 10 } }, e: 456 };
function flat(data, key = "", result = []) {
for (let k in data) {
if (typeof data[k] === "object") {
flat(data[k], key + k + ".", result);
} else result.push({ [key + k]: data[k] });
}
return result;
}
console.log(flat(input));