JavaScript: How to create class with private elements?

Um in JavaScript, einer nicht unbedingt klassenbasierten Sprache eine Klasse mit “echten” privaten Methoden oder Attributen zu erstellen ist daher nicht Möglich. Aufgrund der prototypischen Beschaffenheit der Sprache lässt sich allerdings vieles aus einer klassichen klassenbasierten Sprache “nachbauen”.

Um eine Klasse mit öffentlichen (public) und privaten (private) Methoden oder Attributen zu erstellen können wir das Konzept der Closures verwenden.

var MyClass = (function() {
    var privateAttribute = "Hello World, I'am private";
    
    // Private Methods
    function privateMethod1(str) {
        return str;
    }
    
    function privateMethod2(str) {
        return str;
    }
    
    // Rückgabe eines Objektliterals
    return {
        var publicAttribute = "Hello World, I'am a public";

        // Public Methods
        publicMethod1: function (str) {
            return str;
        },

        publicMethod2: function (str) {
            return str;
        }
    };
})();

 

leave your comment

Durch das Fortsetzen der Benutzung dieser Seite, stimmst du der Benutzung von Cookies zu. Weitere Informationen

Wir verwenden Cookies, um Inhalte und Anzeigen zu personalisieren, Funktionen für soziale Medien anbieten zu können und die Zugriffe auf unsere Website zu analysieren. Außerdem geben wir Informationen zu Ihrer Nutzung unserer Website an unsere Partner für soziale Medien, Werbung und Analysen weiter.

Schließen