いろいろなSingletonを実装してみます。 関数 var getSingleton = (function() { var instance = null, init = function() { instance = { value: Math.random() } }; return function() { if (instance == null) { init(); } return instance; }; })(); var a = getSingleton(); var b = getSingleton(); console.log(a == b); //true console.log(a.value == b.value); //true var c = Object.create(a); console.log(a == c); //false console.l