Singleton

by kordarei

HTML

<html>

  <head>
    <meta charset="UTF-8">
    <title>Document</title>
  </head>

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

</html>

JavaScript

let Singleton = (() => {
  let instance;
  let createInstance = (arg) => new Object(arg);
  return {
    getInstance: (obj) => {
      if (!instance) {
        instance = createInstance(obj);
      }
      return instance;
    }
  };
})();

let alex = Singleton.getInstance({name: 'Aleksandar'});
let petar = Singleton.getInstance({name: 'Petar'});

document.getElementById("output").innerHTML = petar.name;