const getTodos = (callback) => { // im Fall, dass das Request erfolreich abgeschlossen ist (DONE Status (4)) und dass das Request den Status-Code 200 hat, gib die callback Methode // Daten im Art des JSON Objectes zurück (JSON.parse(request.responseText)), andernfalls gib sie den Fehler zurück const request = new XMLHttpRequest(); // Erstellung eines XML HTTP Requests request.addEventListener("readystatechange", () => { // console.log(request, request.readyState); if (request.readyState === 4 && request.status === 200) { const data = JSON.parse(request.responseText) callback(undefined, data); // console.log(request, request.responseText); } else if (request.readyState === 4) { callback("could not fetch the data", undefined); } }); // request.open("GET", "https://jsonplaceholder.typicode.com/todos/"); // fördert Daten von jsonplaceholder API request.open("GET", "todos.json"); // fördert Daten von der localen JSON Datei request.send() } getTodos((err, data) => { console.log("callback fired"); if (err) { console.log(err); } else { console.log(data); } });