Das Schlüsselwort this in Typoskript. Ist es ein Fehler?

7

Ich habe eine Memberfunktion render (). Diese Funktion ruft ein anderes Mitglied der Klasse add (any) auf. Dies ist der Ausschnitt.

%Vor%

Wenn ich das Schlüsselwort "this" addiere, ist der Typ window. Ich würde erwarten, dass es die Instanz der Mitgliedsklasse ist.

  

In einem Konstruktor, einer Memberfunktion oder einem Member-Accessor ist dies der Klasseninstanztyp der enthaltenden Klasse.

    
user1705545 03.12.2012, 12:30
quelle

2 Antworten

16

Wie JcFx angibt, ist Ihr this -Bereich innerhalb des each -Rückrufs anders.

Wenn Sie jedoch eine anonyme "fette Pfeil" -Funktion verwenden, werden die lexikalischen Scoping-Regeln für this verwendet, damit Sie bekommen, wonach Sie suchen:

%Vor%

Kompiliert das folgende JavaScript:

%Vor%

Eine weitere Möglichkeit besteht darin, explizit bind den add Aufruf an die gewünschte this :

zu setzen %Vor%     
JohnnyHK 03.12.2012 15:54
quelle
4

Ich glaube nicht, dass es ein Fehler ist.

Sie befinden sich nicht mehr im Bereich der Funktion render() , sondern im Bereich each() .

Versuchen Sie Folgendes:

%Vor%     
JcFx 03.12.2012 12:47
quelle

Tags und Links