häufige Fehler
;
wird nach Abschluss eines Befehls vergessen
In diesem Fall versucht der Browser diesen und den nachfolgenden Befehl als einen zu interpretieren, was selten klappt
if (a = 2)
In diesem Fall wird a nicht mit 2 verglichen, sondern der Variabeln a wird der Wert 2 zugewiesen. Da dies geklappt hat ist das Ergebnis der Prüfung immer true
.
kara.move
anstelle von kara.move()
JavaScript führt in diesem Fall die Funktion nicht aus, sondern gibt diese als Zeichenkette zurücke. Das bedeutet ganz praktisch, dass die Funktion nicht ausgeführt wird und in einer if(kara.onLeaf)
-Prüfung immer true
zurückgegeben wird, solange es die Funktion gibt.