Skip to content
Subhajit Sahu edited this page Jun 18, 2020 · 13 revisions

Flattens nested object to given depth. 🏃 📼 📦 🌔 📒

Alternatives: flat, flatMap.

object.flat(x, [n], [fm], [ft]);
// x:  a nested object
// n:  maximum depth (-1 => all)
// fm: map function (v, k, x)
// ft: test function (v, k, x)
const object = require('extra-object');

var x = {ab: {a: 1, b: 2}, cde: {c: 3, de: {d: 4, e: {e: 5}}}};
object.flat(x);
// { a: 1, b: 2, c: 3, d: 4, e: 5 }

object.flat(x, 1);
// { a: 1, b: 2, c: 3, de: { d: 4, e: { e: 5 } } }

object.flat(x, 2);
// { a: 1, b: 2, c: 3, d: 4, e: { e: 5 } }

references

Clone this wiki locally