JSFiddle - React, Tailwind, and code Playground

HTML

<div id="output"></div>

JavaScript

var hello = function (greetingOptions) {
    if (typeof greetingOptions === 'undefined') {
        greetingOptions = {
            greeting: "Hello",
            recipient: "World"
        };
    }
    $("#output").append(greetingOptions.greeting + ', ' + greetingOptions.recipient + '<br/>');
};

hello();
hello({
    greeting: "Hi",
    recipient: "Steve"
});
hello({greeting: "Hi"});

$("#output").append("<hr>");

var hello = function (params) {
    if (typeof params === 'undefined') {
        params = {};
    }
    params = $.extend({
        greeting: "Hello",
        recipient: "World"
    }, params); // latter replaces former
    $("#output").append(params.greeting + ', ' + params.recipient + '<br/>');
};

hello({
    greeting: "Hi"
});
hello({
    recipient: "Steve"
});

var options = {
    greeting: "Good Evening",
    recipient: "Everybody!"
};
hello(options);