¿Qué hace la nueva palabra clave debajo del capó?

Tengo curiosidad por saber qué másnew palabra clave hace en segundo plano, aparte de cambiar lo que elthis alcance se refiere también.

Por ejemplo, si comparamos usando elnew palabra clave para hacer que una función establezca propiedades y métodos en un objeto para hacer que una función devuelva un nuevo objeto, ¿hay algo más que el nuevo objeto?

Y cuál es el preferido si no deseo crear múltiples objetos desde el constructor de funciones

var foo2 = function () {
  var temp = "test";

  return {
    getLol: function () {
      return temp;
    },

    setLol: function(value) {
      temp = value;
    }
  };

}();

var foo = new function () {
  var temp = "test";

  this.getLol = function () {
    return temp;
  }

  this.setLol = function(value) {
    temp = value;
  }
}();

El generador de perfiles firebug me dice que usar la nueva palabra clave es un poco más rápido (2 ms en lugar de 3 ms), en objetos grandes, ¿es nuevo aún significativamente más rápido?

[Editar]

Otra cuestión es que los constructores de objetos realmente grandes es tener un retorno en la parte inferior de la función (tendrá una gran cantidad de funciones locales) o tener algunos this.bar = ... en la parte superior de la función ¿más legible? ¿Qué se considera una buena convención?

var MAIN = newfunction() {
    this.bar = ...

    // Lots of code
}();

var MAIN2  = function() {
    // Lots of code

    return {
        bar: ...
    }
}();

Respuestas a la pregunta(2)

Su respuesta a la pregunta