Merge pull request #646 from yazeedb/add-renameKeys
[FEATURE] renameKeys
This commit is contained in:
19
snippets/renameKeys.md
Normal file
19
snippets/renameKeys.md
Normal file
@ -0,0 +1,19 @@
|
||||
### 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 }
|
||||
```
|
||||
Reference in New Issue
Block a user