JSFiddle - React, Tailwind, and code Playground

JavaScript

// Object constructor
var parent = function (initial) {
    var that, privateNumber, hiddenVar; 
    that = {};    
    
    // Public variables
    that.share = initial - 32;
    
    // Public methods
    that.getNumber = function () {
        return privateNumber;                
    };
    
    // Private properties
    privateNumber = initial; 
    hiddenVar = "haha can't get me";    
    
    return that;
};

// Second object constructor that inherits from parent
var child = function (initial) {
    var that, privateName;
    
    // Inherit from parent
    that = parent(initial);
    
    // Public methods
    that.getName = function () {
        return privateName;                
    };
    
    // Private poroperties
    privateName = "Ludwig the " + initial + "th";
    
    return that;
};

// Create objects
var newPar1 = parent(42);
var newPar2 = parent(10);   

var newChild1 = child(0);
var newChild2 = child(100);
    

// Retrieve object properties
$("body").append("newPar1.privateNumber = " + newPar1.getNumber() + "<br/>");
$("body").append("newPar1.share = " + newPar1.share + "<br/><br/>");          
$("body").append("newPar2.privateNumber = " + newPar2.getNumber() + "<br/>");  
$("body").append("newPar2.share = " + newPar2.share + "<br/><br/><hr/><br/>");      

$("body").append("newChild1.privateNumber = " + newChild1.getNumber() + "<br/>");
$("body").append("newChild1.share = " + newChild1.share + "<br/>");          
$("body").append("newChild1.name = " + newChild1.getName() + "<br/><br/>"); 
$("body").append("newChild2.privateNumber = " + newChild2.getNumber() + "<br/>");  
$("body").append("newChild2.share = " + newChild2.share + "<br/>");          
$("body").append("newChild2.name = " + newChild2.getName() + "<br/>");