Files
30-seconds-of-code/snippets/renameKeys.md
Angelos Chalaris d40f859288 Update renameKeys.md
2018-04-10 23:03:42 +03:00

20 lines
621 B
Markdown

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