Orientierung
Was brauchst du als Basiswissen?
Für die Prüfung brauchst du die Inhalte der bisherigen Unterrichtsreihe: Ereignisse und externe JavaScript-Dateien, for-Schleifen, Arrays, switch-Verzweigungen und Animationen.
Worum geht es?
In der Prüfung werden Aufgaben aus drei Stufen zufällig ausgewählt. In Stufe 1 wird Grundwissen abgefragt. In Stufe 2 untersuchst und vervollständigst du Code. In Stufe 3 schreibst du selbst kurze Programme oder Programmteile.
Was ist das Ziel?
Du kennst die verschiedenen Aufgabenarten, kannst deine Antworten überprüfen und weißt, welche Themen du noch üben solltest.
Vorbereitung
So gehst du bei den Aufgaben vor
Lies zuerst genau, was verlangt wird. Achte bei Code besonders auf Groß- und Kleinschreibung, Klammern, Anführungszeichen und Semikolons. Verfolge bei Schleifen die ersten Durchläufe auf Papier. Prüfe bei Arrays den Startindex 0 und bei Animationen, ob ein nächstes Bild angefordert wird.
Die Lösungen der Beispiele sind manchmal nur eine mögliche Lösung. Ein anderer korrekter Lösungsweg ist ebenfalls richtig.
Stufe 1: Grundwissen
In Stufe 1 erklärst du Begriffe oder nennst einen passenden Befehl. Meist genügt eine kurze und genaue Antwort.
Beispiel 1: Worin unterscheiden sich `querySelector` und `querySelectorAll`?
Lösung: `querySelector` liefert das erste passende Element. `querySelectorAll` liefert alle passenden Elemente.
Beispiel 2: Womit beginnt der Index eines Arrays?
Lösung: Das erste Element eines Arrays hat in JavaScript den Index 0. Bei drei Elementen lauten die gültigen Indizes deshalb 0, 1 und 2.
Beispiel 3: Welche Aufgabe hat `default` in einer switch-Verzweigung?
Lösung: `default` behandelt den Fall, dass keiner der angegebenen `case`-Werte passt.
Jetzt bist du dran. Beantworte die Aufgaben ohne Hilfe:
- Wie kann die externe Datei `spiel.js` in HTML eingebunden werden?
- Was bedeutet `event.target` bei einem Ereignis?
- Wozu verwendet man `array.length`?
- Was fordert `requestAnimationFrame` beim Browser an?
Stufe 2: Code verstehen, ergänzen und verbessern
In Stufe 2 musst du Code schrittweise lesen. Überlege bei einer Schleife: Wo startet der Zähler? Wie lange ist die Bedingung wahr? Wie wird der Zähler verändert?
Beispiel 1: Welche Ausgabe entsteht?
Lösung: Es werden 2, 5 und 8 ausgegeben. Danach wird `i` zu 11 und die Bedingung `i <= 8` ist falsch.
Beispiel 2: Verbessere den Code. Beim Klick soll `anzeigen` ausgeführt werden.
Lösung:
Der Ereignisname enthält kein `on`. Außerdem wird die Funktion ohne Klammern übergeben, damit sie erst beim Klick läuft.
Beispiel 3: Ergänze die Lücken, sodass jedes Element ausgegeben wird.
Lösung: In die erste Lücke gehört `farben.length`, in die zweite `farben[i]`.
Jetzt bist du dran. Bearbeite die Aufgaben ohne Lösung:
- Welche Zahlen gibt diese Schleife aus?
- Finde und verbessere den Fehler:
- Erkläre, was bei `modus = "pause"` geschieht:
- Eine Animationsfunktion ruft `requestAnimationFrame(bewegen)` zweimal auf. Erkläre, warum das problematisch ist.
Stufe 3: Eigenen Code schreiben
In Stufe 3 entwickelst du selbst ein kurzes Codestück. Teile die Aufgabe zuerst in kleine Schritte. Verwende verständliche Variablennamen und prüfe anschließend jede Forderung aus der Aufgabenstellung.
Beispiel 1: Lege ein Array mit den Punktzahlen 4, 9 und 6 an. Füge danach die Punktzahl 12 hinzu und gib die Anzahl der Einträge aus.
Lösung:
Beispiel 2: Schreibe eine for-Schleife, die von 5 bis 25 in Fünferschritten zählt.
Lösung:
Beispiel 3: Die Variablen `y`, `vy` und das Element `figur` existieren bereits. Schreibe eine Animationsfunktion, die die senkrechte Position verändert, darstellt und das nächste Bild anfordert. die y-Position eines Elementes ist figur.style.top.
Lösung:
Jetzt bist du dran. Schreibe jeweils eigenen Code:
- Wähle alle Elemente mit der Klasse `karte` aus und gib jedes Element mithilfe von `forEach` in der Konsole aus.
- Gib die Werte des Arrays `temperaturen` mit einer for-Schleife in umgekehrter Reihenfolge aus.
- Schreibe eine switch-Verzweigung für die Variable `taste`. Bei `"ArrowUp"` soll `y` um 10 verkleinert werden, bei `"ArrowDown"` um 10 vergrößert werden. Ein unbekannter Wert soll eine Meldung in der Konsole erzeugen.
- Erzeuge acht `div`-Elemente in einer for-Schleife und hänge sie an das bereits ausgewählte Element `container` an.
Rückblick
Was solltest du vor der Prüfung können?
Du solltest Elemente auswählen und Ereignisse mit `addEventListener` verbinden können. Du solltest for-Schleifen lesen und schreiben, Arrays über ihren Index und ihre Länge verarbeiten sowie geeignete Fälle mit `switch` unterscheiden. Bei einer Animation solltest du Zustand, Darstellung und das Anfordern des nächsten Bildes erkennen.
Wenn dir eine Aufgabe schwerfällt, gehe zum passenden Arbeitsblatt zurück und bearbeite dort noch einmal eine der kurzen Aufgaben. Danach versuchst du diese Vorbereitung erneut, ohne die Beispiele anzusehen.
Wie geht es weiter?
Wenn du die Übungsaufgaben erklären und lösen kannst, bist du auf die drei Stufen der Prüfung gut vorbereitet.