es-toolkit/docs/reference/object/flattenObject.md
2024-08-11 10:54:13 +09:00

644 B

flattenObject

Flattens a nested object into a single-level object with dot-separated keys.

  • Arrays are flattened.
  • Non-plain objects, like Buffers or TypedArrays, are not flattened.

Signature

function flattenObject(object: object): Record<string, any>;

Parameters

  • object (object): The object to flatten.

Returns

(T): The flattened object.

Examples

const nestedObject = {
  a: {
    b: {
      c: 1,
    },
  },
  d: [2, 3],
};

const flattened = flattenObject(nestedObject);
console.log(flattened);
// Output:
// {
//   'a.b.c': 1,
//   'd.0': 2,
//   'd.1': 3
// }