Übungen: JavaScript-Grundlagen II

In diesen Übungen arbeiten Sie mit JSON-Daten, Array-Methoden und dynamischem Rendering. Jede Übung enthält Startcode und inline Daten — Sie müssen die JavaScript-Logik vervollständigen. Nutzen Sie die Konsole (F12) zum Debuggen.

Übung 1: JSON-Explorer

Array-Methoden & DOM

Laden Sie Museumsobjekte aus einer inline JSON-Datenstruktur, stellen Sie sie als Karten dar und implementieren Sie eine Live-Suchfunktion. Vervollständigen Sie die drei markierten TODO-Abschnitte im JavaScript-Code.

Aufgabe

  • Parsen Sie die JSON-Daten aus dem <script>-Tag
  • Rendern Sie jedes Objekt als Karte mit Name, Datierung, Kategorie und Beschreibung
  • Implementieren Sie eine Live-Suche, die bei jeder Eingabe filtert
uebung-1-json-explorer.html
Vorschau

Übung 2: Europeana-Suche

API-Daten & Galerie

Bauen Sie eine Suchmaske, die eine simulierte Europeana-Response nach Suchbegriff filtert und die Ergebnisse als Bildergalerie darstellt. Da wir keinen echten API-Key verwenden, arbeiten wir mit inline Beispieldaten.

Aufgabe

  • Filtern Sie die Europeana-Items nach dem eingegebenen Suchbegriff (Titel und Anbieter)
  • Zeigen Sie die Ergebnisse als Galerie mit Vorschaubild, Titel, Jahr und Datenanbieter
  • Der Suchen-Button und die Enter-Taste sollen die Suche auslösen
uebung-2-europeana-suche.html
Vorschau

Übung 3: Korrespondenz-Filter

CSV-Parsing & Tabelle

Parsen Sie einen CSV-String mit Korrespondenzdaten, zeigen Sie ihn als Tabelle an und implementieren Sie Filter nach Person und Zeitraum. Diese Übung simuliert die Arbeit mit tabellarischen DH-Daten.

Aufgabe

  • Parsen Sie den CSV-String in ein Array von Objekten
  • Rendern Sie die Daten als HTML-Tabelle
  • Füllen Sie die Filter-Dropdowns dynamisch mit den verfügbaren Personen
  • Filtern Sie bei Änderung der Dropdowns
uebung-3-korrespondenz-filter.html
Vorschau

Übung 4: IIIF-Viewer

IIIF & Galerie

Parsen Sie ein vereinfachtes IIIF-Manifest und zeigen Sie die Bilder als Galerie an. Jedes Canvas im Manifest repräsentiert eine Seite des digitalisierten Dokuments. Extrahieren Sie die Bild-URLs und Beschriftungen aus der verschachtelten Struktur.

Aufgabe

  • Navigieren Sie die verschachtelte IIIF-Manifest-Struktur
  • Extrahieren Sie aus jedem Canvas: Label, Bild-URL, Breite und Höhe
  • Rendern Sie die Bilder als Galerie mit Beschriftung
  • Zeigen Sie den Manifest-Titel und die Metadaten an
uebung-4-iiif-viewer.html
Vorschau

Agentic Coding: Context Engineering

Wenn Sie bei einer Übung nicht weiterkommen, versuchen Sie folgenden Ansatz mit einem LLM:

  1. Kopieren Sie die Datenstruktur (z.B. ein JSON-Objekt) in den Prompt
  2. Beschreiben Sie die gewünschte Ausgabe (z.B. „als Karten-Grid“)
  3. Geben Sie Constraints an (z.B. „nur Vanilla JS, mit map() und filter()“)
  4. Prüfen Sie das Ergebnis und iterieren Sie bei Bedarf

Je genauer der Kontext, desto besser der generierte Code. Das ist Context Engineering in der Praxis.

Für eigene Projekte: Fertige Hilfsmodule

Die Muster, die Sie in diesen Übungen gelernt haben (JSON laden, Tabellen rendern, Daten filtern), stehen als wiederverwendbare Module bereit:

  • js/data-utils.jsDataUtils.loadJSON(url), DataUtils.loadCSV(url), DataUtils.renderTable(data, columns), DataUtils.filterBySearch(data, query, fields), DataUtils.sortBy(data, field)
  • js/tei-viewer.jsTEIViewer.loadAndRender(url, container) für TEI-Briefe

Binden Sie diese Module in Ihrem Assignment 2 ein, um sich auf die Interaktivität und das Design zu konzentrieren, statt Basisfunktionen neu zu implementieren.