w3resource

JavaScript: Assigns default values for all properties in an object that are undefined

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

Write a JavaScript program that assigns default values to all undefined properties in an object.

  • Use Object.assign() to create a new empty object and copy the original one to maintain key order.
  • Use Array.prototype.reverse() and the spread operator (...) to combine the default values from left to right.
  • Finally, use obj again to overwrite properties that originally had a value.

Sample Solution:

JavaScript Code:

//#Source https://bit.ly/2neWfJ2 
const defaults = (obj, ...defs) => Object.assign({}, obj, ...defs.reverse(), obj);
console.log(defaults({ a: 1 }, { b: 2 }, { b: 6 }, { a: 3 }));

Sample Output:

{"a":1,"b":2}

Flowchart:

flowchart: Assigns default values for all properties in an object that are undefined.

Live Demo:

See the Pen javascript-basic-exercise-247-1 by w3resource (@w3resource) on CodePen.


Improve this sample solution and post your code through Disqus

Previous: Write a JavaScript program to convert an given angle from degrees to radians.
Next: Write a JavaScript program to deep flatten an array.

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.