Files
30-seconds-of-code/snippets/listify.md
Angelos Chalaris 8a6b73bd0c Update covers
2023-02-16 22:24:28 +02:00

818 B

title, tags, author, cover, firstSeen
title tags author cover firstSeen
Map an object to an array object,array chalarangelo metro-arrival 2023-02-05T05:00:00-04:00

Maps an object to an object array, using the provided mapping function.

  • Use Object.entries() to get an array of the object's key-value pairs.
  • Use Array.prototype.reduce() to map the array to an object.
  • Use mapFn to map the keys and values of the object and Array.prototype.push() to add the mapped values to the array.
const listify = (obj, mapFn) =>
  Object.entries(obj).reduce((acc, [key, value]) => {
    acc.push(mapFn(key, value));
    return acc;
  }, []);
const people = { John: { age: 42 }, Adam: { age: 39 } };
listify(people, (key, value) => ({ name: key, ...value }));
// [ { name: 'John', age: 42 }, { name: 'Adam', age: 39 } ]