Gibt es eine Kapselung in JavaScript?

Ich habe eine Erfahrung mit der Programmiersprache C #, aber ich muss jetzt auch mit dem JS arbeiten und es ist ziemlich neu für mich.

Ich habe versucht, eine einfache Klassenemulation in JS zu entwickeln:

http://jsfiddle.net/T74Zm/

function A( inputValue ) {
    this.Init( inputValue );
    this.Print();
}
A.prototype = {
    value: null,
    Init: function( inputValue ) {
        this.value = inputValue;
    },
    Print: function () {
        console.log( this.value );
    }
}

var obj = new A(40);

Ich habe versucht, die Variable zu kapselnvalue imA.prototypeNach JavaScript-Spezifikation sind jedoch alle Objekte verfügbar.

Meine Fragen sind also:

1). Wie kann ich eine Kapselung erstellen, die den statischen Sprachen mit Unterstützung für OOP / Zugriffsmodifikatoren sehr nahe kommt?

2). Wie kann ich einige Zugriffsmodifikatoren in JS emulieren?private zum Beispiel?

Antworten auf die Frage(3)

Ihre Antwort auf die Frage