Aufruf einer Methode aus einer anderen in eine Javascript-Klasse,

Bei der Definition einer Klasse in Javascript, wie kann ich den Aufruf einer Methode von anderen?

exports.myClass = function () {

    this.init = function() {
        myInternalMethod();
    }

    this.myInternalMethod = function() {
        //Do something
    }
}

Den obigen code gibt mir die folgende Fehlermeldung bei der Ausführung:

ReferenceError: myInternalMethod ist nicht definiert

Ich habe auch versucht diese.myInternalMethod und selbst.myInternalMethod, aber beide führen zu Fehlern.
Was ist der richtige Weg, dies zu tun?

  • Cache den Wert this in einer variable auf den höheren Bereich, dann verwenden Sie diese. var self = this; self.method();
  • Auch JavaScript hat keine Klassen. Es ist eine Prototyp-basierte, Objekt-orientierte Sprache.
  • Sie müssen wissen, dass dies eine sehr schlechte Idee, es sei denn, Sie wirklich wollen, um beziehen sich immer auf das Letzte Objekt instanziert. Das heißt, die Frage ist nicht voll von Erklärungen...
  • new myClass()?
  • elclanrs: Das ist mein problem gelöst. Würde Sie Sinn machen, eine Antwort aus diese?
InformationsquelleAutor Boris | 2013-12-01
Schreibe einen Kommentar