Понимание объекта singleton в Javascript

У меня возникли проблемы с пониманием того, что происходит, когда экземпляр вызывает новую Universe(). Разве он не возвращает "undefined"?

function Universe() {
 var instance;

 Universe = function Universe() {
 return instance;
 }

 Universe.prototype = this;
 instance = new Universe();
 instance.constructor = Universe;
 instance.start_time = 0;
 instance.bang = "big";
 return instance;
}
1 ответ

он не будет возвращать undefined, а не возвращать object.see в поле предупреждения или в консоли;

function Universe() {
 var instance;

 Universe = function Universe() {
 return instance;
 }

 Universe.prototype = this;
 instance = new Universe();
 alert("ins"+instance);//or
 console.log(instance);
 instance.constructor = Universe;
 instance.start_time = 0;
 instance.bang = "big";
 return instance;
 }

 alert(Universe());//or
console.log(Universe());

licensed under cc by-sa 3.0 with attribution.