JSFiddle - React, Tailwind, and code Playground

by Chase Wilson

HTML

<a href="#" id="screamer">scream</a>

JavaScript

window.addEvent('domready',function(){
    var screamerButton = document.getElementById('screamer');
    var singleInstance = Singleton.getInstance();
    
    screamerButton.addEvent('click',function(){
        singleInstance.scream();
    });
});               

var Singleton = (function(){
   var instance;
   var constructor = function(){
       var privateProperties = [];
       privateProperties.push('I\'m Private');
       
       var getPrivateProperty = function(key){
           return privateProperties[key];
       }
           
       return {
           scream : function(){
               alert('Ahhhhhhh '+ getPrivateProperty(0) );
           }
       };
   };
       
   return {
       getInstance: function(){
           if(!instance) {
               instance = constructor();
           }
           return instance;
       }
   };
})();