w3resource

JavaScript: Replace the names of multiple object keys with the values provided

JavaScript fundamental (ES6 Syntax): Exercise-14 with Solution

Write a JavaScript program to replace multiple object keys' names 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.

Sample Solution:

JavaScript Code:

//#Source https://bit.ly/2neWfJ2 
const rename_keys = (keysMap, obj) =>
  Object.keys(obj).reduce(
    (acc, key) => ({
      ...acc,
      ...{ [keysMap[key] || key]: obj[key] }
    }),
    {}
  );
const obj = { name: 'Bobo', job: 'Programmer', shoeSize: 100 };
console.log("Original Object");
console.log(obj);
console.log("-------------------------------------");
result = rename_keys({ name: 'firstName', job: 'Actor' }, obj);
console.log("New Object");
console.log(result);

Sample Output:

"Original Object"
[object Object] {
  job: "Programmer",
  name: "Bobo",
  shoeSize: 100
}
"-------------------------------------"
"New Object"
[object Object] {
  Actor: "Programmer",
  firstName: "Bobo",
  shoeSize: 100
}

Flowchart:

flowchart: Replace the names of multiple object keys with the values provided

Live Demo:

See the Pen javascript-fundamental-exercise-14 by w3resource (@w3resource) on CodePen.


Improve this sample solution and post your code through Disqus

Previous: Write a JavaScript program to convert the length of a given string in bytes.
Next: Write a JavaScript program to return the minimum-maximum value of an array, after applying the provided function to set comparing rule.

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.



Follow us on Facebook and Twitter for latest update.