595 B
595 B
title, type, tags, cover, dateModified
| title | type | tags | cover | dateModified | |
|---|---|---|---|---|---|
| Map object keys | snippet |
|
rocky-mountains-2 | 2020-10-21T21:54:53+03:00 |
Maps the keys of an object using the provided function, generating a new object.
- Use
Object.keys()to iterate over the object's keys. - Use
Array.prototype.reduce()to create a new object with the same values and mapped keys usingfn.
const mapKeys = (obj, fn) =>
Object.keys(obj).reduce((acc, k) => {
acc[fn(obj[k], k, obj)] = obj[k];
return acc;
}, {});
mapKeys({ a: 1, b: 2 }, (val, key) => key + val); // { a1: 1, b2: 2 }