Files
30-seconds-of-code/snippets/renameKeys.md
2022-12-04 22:20:49 +02:00

778 B

title, tags, cover, firstSeen, lastUpdated
title tags cover firstSeen lastUpdated
Rename object keys object blog_images/fallen-leaves.jpg 2018-04-10T20:22:39+03:00 2020-10-22T20:24:30+03:00

Replaces the names of multiple object keys with the values provided.

  • Use Object.keys() in combination with Array.prototype.reduce() and the spread operator (...) to get the object's keys and rename them according to keysMap.
const renameKeys = (keysMap, obj) =>
  Object.keys(obj).reduce(
    (acc, key) => ({
      ...acc,
      ...{ [keysMap[key] || key]: obj[key] }
    }),
    {}
  );
const obj = { name: 'Bobo', job: 'Front-End Master', shoeSize: 100 };
renameKeys({ name: 'firstName', job: 'passion' }, obj);
// { firstName: 'Bobo', passion: 'Front-End Master', shoeSize: 100 }