JSFiddle - React, Tailwind, and code Playground

JavaScript

function extend (target, source) {
    var a = Object.create(target);
    Object.keys(source).map(function (prop) {
        prop in a && (a[prop] = source[prop]);
    });
    return a;
};

var defaults = {
    number: 1,
    bool: true,
    magic: 'real',
    animal: 'whale',
    croutons: 'delicious'
};

var options = {
    number: 2,
    magic: 'real',
    animal: 'porpoise',
    bool: false,
    random: 42
};

var settings = extend(defaults, options);

console.log(settings, defaults);