Funciones de instancia de JavaScript versus funciones de prototipo [duplicado]

Posible duplicado:
¿Uso de 'prototipo' vs. 'este' en Javascript?

Mi comprensión de los diferentes tipos de funciones de JavaScript es la siguiente:

function MyObj() {
    this.propOne = true;
    this.publicInstanceFunc = function() {
        if (propOne)
            return 'public instance function';
    }
    function privateFunc() {
        return 'private function only visible inside this constructor';
    }
}

MyObj.prototype.protoFunc = function() {
    if (this.propOne)
        return 'prototype function shared amongst all instances of MyObj';
}
¿Son estas correctas?¿En qué casos se deben poner funciones en el prototipo (por ejemplo,protoFunc) vs. en el constructor (por ejemplo,publicInstanceFunc)?Esta usandothis ¿La forma correcta de acceder a las propiedades dentro de las funciones de prototipo?

Respuestas a la pregunta(4)

Su respuesta a la pregunta