JSFiddle - React, Tailwind, and code Playground

HTML

<ul id="log">
</ul>

JavaScript

function log(msg){
    msg = msg || "-";
    $("#log").append("<li>"+msg+"</li>");
}

if (typeof Object.beget !== 'function') {
    Object.beget = function(o) {
        var F = function() {};
        F.prototype = o;
        return new F();
    };
}

var a = Object.beget( { foo : "bar"} );
var b = Object.beget( a );

log("a.foo: "+a.foo);
log("b.foo: "+b.foo);

log();

b.foo = "1st Change";

log("a.foo: "+a.foo);
log("b.foo: "+b.foo);

log();

a.foo = "2nd Change";

log("a.foo: "+a.foo);
log("b.foo: "+b.foo);