Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
de:modul:m307:learningunits:lu02:aufgaben:02 [2026/02/09 13:42] – gelöscht - Externe Bearbeitung (Unbekanntes Datum) 127.0.0.1de:modul:m307:learningunits:lu02:aufgaben:02 [2026/02/09 15:09] (aktuell) – ↷ Links angepasst, weil Seiten im Wiki verschoben wurden 216.73.216.51
Zeile 1: Zeile 1:
 +====== LU02.A02 - JSON-File einlesen und ausgeben ======
 +
 +===== Rahmenbedingungen =====
 +  * Sozialform: Einzelarbeit
 +  * Hilfsmittel: Openbooks
 +  * Zeit: 15 Minutes
 +  * Erwartetes Resultat: JavaScript-File, dass ein gegebenes JSON File einliest und auf der Computer-Konsole ausgibt.
 +
 +===== Ausgangslage =====
 +Das nachfolgende JSON-File //lernende.json// ist gegeben. Kopieren Sie dieses mit Copy-Paste in Ihre Entwicklungsumgebung.
 +
 +**lernende.json**
 +
 +  {
 +    "lernende": [
 +      {
 +        "name": "Anna",
 +        "nachname": "Keller",
 +        "alter": 19,
 +        "bms": false,
 +        "hobbies": ["Lesen", "Joggen", "Kochen"]
 +      },
 +      {
 +        "name": "Sophie",
 +        "nachname": "Hofstetter",
 +        "alter": 20,
 +        "bms": true,
 +        "hobbies": ["Fotografie", "Yoga", "Reisen"]
 +      }
 +    ] 
 +  }
 +
 +
 +===== Auftrag =====
 +Erstellen Sie ein JS-Script, das die JSON-Inhalt asynchron einliest und auf der Computerkonsole formatiert ausgibt. Das Ergebnis soll wie folgt aussehen.
 +
 +{{:de:modul:m307:learningunits:lu01:aufgaben:lu01_l02_1.jpg?600|}}
 +
 +Als Vorlage für Ihr JavaScript, können Sie die nachfolgende JS-Datei verwenden, die die Grundstruktur für das Einlesen bereitstellt.
 +
 +**vorlage für lu01_l02.js**
 +
 +  const fs = require("fs");
 +  //
 +  fs.readFile("lernende.json", "utf8", (err, data) => {
 +    if (err) {
 +      console.error("Fehler beim Lesen:", err);
 +      return;
 +    }
 +    //
 +    const daten = JSON.parse(data);
 +    //
 +    console.log(typeof daten); // object
 +    //
 +    console.log("Anzahl Lernende:", daten.lernende.length);
 +    //
 +    console.log("\n--- Gesamte Daten als formatierter JSON-String ---");
 +    console.log(JSON.stringify(daten, null, 2));  // << formatierte Ausgabe
 +    //
 +    console.log("\n--- Einzelwerte erster Datensatz ---");
 +    console.log("Name:", daten.lernende[0].name);
 +    // hier müssen die restlichen Attribute des ersten Datensatzes ausgegeben werden
 +    // das erste Atttribut ist bereits als vorlage vorhanden
 +    //
 +    console.log("\n--- Einzelwerte zweiter Datensatz ---");
 +    // hier muss, nach Vorlage des ersten Satzes, der zweite Satz ebenfalls ausgeben werden.
 +    //   
 +  });
 +  
 +===== Lösungen =====
 +[[de:modul:m307:learningunits:lu02:loesungen:02|LU01.L02]]
 +
 +----
 +[[https://creativecommons.org/licenses/by-nc-sa/4.0/|{{https://i.creativecommons.org/l/by-nc-sa/4.0/88x31.png}}]] Volkan Demir
 +
 +
 +