Sobes.tech
Junior

Nennen Sie die Werkzeuge, die Sie zum Schreiben asynchroner Aufrufe verwendet haben.

sobes.tech KI

Antwort von AI

JavaScript bietet verschiedene Werkzeuge für die Arbeit mit asynchronen Aufrufen:

  • Callback-Funktionen: Klassischer Ansatz, bei dem eine Funktion als Argument an eine andere Funktion übergeben wird und nach Abschluss der asynchronen Operation ausgeführt wird.

  • Promises: Objekte, die einen zukünftigen Wert oder einen Fehler einer asynchronen Operation repräsentieren. Vereinfachen die Verkettung asynchroner Aufrufe und die Fehlerbehandlung.

    // Beispiel für die Verwendung von Promises
    fetch('/api/data')
      .then(response => response.json()) // Erfolgreiche Antwortverarbeitung
      .then(data => console.log(data)) // Arbeiten mit den empfangenen Daten
      .catch(error => console.error('Fehler:', error)); // Fehlerbehandlung
    
  • Async/await: Syntaxzucker über Promises, der es ermöglicht, asynchronen Code in einem synchroneren Stil zu schreiben, was die Lesbarkeit erhöht.

    // Beispiel für die Verwendung von async/await
    async function fetchData() {
      try {
        const response = await fetch('/api/data'); // Warten auf Abschluss von fetch
        const data = await response.json(); // Warten auf JSON-Parsing
        console.log(data);
      } catch (error) {
        console.error('Fehler:', error);
      }
    }
    fetchData();
    
  • XMLHttpRequest (XHR): Basisebene API für HTTP-Anfragen im Browser. Niedrigeres Niveau im Vergleich zu fetch und erfordert mehr Code für die Handhabung.

    // Beispiel für die Verwendung von XMLHttpRequest
    const xhr = new XMLHttpRequest();
    xhr.open('GET', '/api/data', true); // Asynchrone Anfrage
    xhr.onload = function() {
      if (xhr.status >= 200 && xhr.status < 300) {
        console.log(JSON.parse(xhr.responseText));
      } else {
        console.error('Fehler:', xhr.statusText);
      }
    };
    xhr.onerror = function() {
      console.error('Netzwerkfehler');
    };
    xhr.send();
    
  • Fetch API: Modernes und flexibleres API für HTTP-Anfragen, basierend auf Promises.

    // Beispiel für die Verwendung der Fetch API
    fetch('/api/data')
      .then(response => response.json())
      .then(data => console.log(data))
      .catch(error => console.error('Fehler:', error));
    
  • Bibliotheken für die Arbeit mit HTTP-Anfragen: Zum Beispiel axios (für Browser und Node.js) oder jQuery.ajax(). Sie vereinfachen und standardisieren die Ausführung asynchroner Anfragen.

    // Beispiel für die Verwendung von Axios
    axios.get('/api/data')
      .then(response => console.log(response.data))
      .catch(error => console.error('Fehler:', error));
    

Die Wahl des Werkzeugs hängt von der Spezifik der Aufgabe und dem Projektkontext ab. Fetch und async/await sind moderne und empfohlene Ansätze für die meisten Fälle.