Jetzt die Funktion getAppleInfo. Ich könnte die theoretisch ja auch so benutzen unabhängig von der Klasse (es geht jetzt nichtmal um das Klassen Zeug), aber wenn ich die Funktion so benutzen würde was wäre dann this?
...
Was this macht lässt sich recht einfach am Code erklären:
Da wird ja type 2 mal genutzt, einmal als this.type als Variable der Klasse und einmal als Parameter type der Funktion Apple.
this ist nun da um zu trennen was nun gemeint ist, denn this.type und type sind 2 verschiedene Variablen und müssen nicht das gleiche enthalten.
Wenn du die Funktion getAppleInfo von außen ohne Objekt aufrufst, wird das Skript höchstwahrscheinlich einen Laufzeit-Fehler erzeugen, weil this ja dann "null" ist (ins digitale Nirgendwo zeigt).
Es ist da schöner, wenn man getAppleInfo in function Apple rein macht (im Tutorial dann 1.1.), damit keiner von außen Blödsinn mit machen kann, außer man will die Funktion bei anderen Klassen-Deklarationen wiederverwenden (da am besten als Kommentar vorher zu sagen, dass man da ein Objekt braucht).