¿Cuál es la mejor práctica para asegurar "este" contexto en Javascript?

Aquí hay una muestra de una clase de Javascript simple con un método público y privado (violín:http://jsfiddle.net/gY4mh/).

function Example() {
    function privateFunction() {
       // "this" is window when called.
       console.log(this);
    }

    this.publicFunction = function() {
       privateFunction();
    }
}

ex = new Example;
ex.publicFunction();

Llamar a la función privada desde el público da como resultado que "este" sea el objeto de ventana. ¿Cómo debo asegurarme de que mis métodos privados sean llamados con el contexto de la clase y no con la ventana? ¿Sería esto indeseable?

Respuestas a la pregunta(8)

Su respuesta a la pregunta