Heim > Web-Frontend > js-Tutorial > Wie man eine JSON -Antwort in JavaScript durchläuft

Wie man eine JSON -Antwort in JavaScript durchläuft

Jennifer Aniston
Freigeben: 2025-02-10 12:05:10
Original
881 Leute haben es durchsucht

How to Loop Through a JSON Response in JavaScript

Dieses Tutorial zeigt, wie JSON -Daten, die von einem Remote -Server mit JavaScript empfangen werden, effizient analysiert werden. Wir werden den Vorgang in zwei Schritten abdecken: Decodieren der JSON -Zeichenfolge in eine verwendbare JavaScript -Struktur (Objekt oder Array) und dann durch diese Struktur durchzusetzen, um auf die Daten zuzugreifen. Wir werden praktische Beispiele mit sowohl XMLHttpRequest als auch mit der moderneren fetch api verwenden.

Schlüsselkonzepte:

  1. JSON (JavaScript-Objektnotation): Ein leichtes, textbasiertes Datenabtauschformat, das in Webanwendungen weit verbreitet ist. JSON inspiriert von JavaScript -Objekt -Literal -Syntax und benötigt ausschließlich doppelte Zitate um Tasten.
  2. JSON -Analyse: Der Prozess der Konvertierung einer JSON -String in ein JavaScript -Objekt oder -Array. Dies ist entscheidend, da der Server Daten als Zeichenfolge sendet, die analysiert werden müssen, bevor er verwendet werden kann.
  3. Iteration: Nach der Parsen verwenden wir die integrierten Methoden von JavaScript wie for...in, Object.entries, Object.values oder Array-Methoden (forEach usw.), um auf einzelne Datenelemente zuzugreifen Innerhalb der analysierten Struktur.

JSON verstehen:

JSON -Daten können auf zwei Arten strukturiert werden:

  • JSON -Objekt: Eine Sammlung von Namen/Wertpaaren (ähnlich wie ein JavaScript -Objekt).
  • JSON -Array: Eine geordnete Liste von Werten (ähnlich wie bei einem JavaScript -Array).

JSON mit XMLHttpRequest:

abrufen

Verwenden wir die icanhazdadjoke API (eine einfache Witz -API) als Beispiel. Diese API gibt JSON -Daten zurück, wenn der Accept -Header auf application/json.

gesetzt ist

Erstens holen wir die Daten:

const xhr = new XMLHttpRequest();
xhr.onreadystatechange = () => {
  if (xhr.readyState === XMLHttpRequest.DONE) {
    console.log(typeof xhr.responseText); // Output: string
    console.log(xhr.responseText);       // Output: JSON string
  }
};
xhr.open('GET', 'https://icanhazdadjoke.com/', true);
xhr.setRequestHeader('Accept', 'application/json');
xhr.send(null);
Nach dem Login kopieren

Die Antwort ist eine Zeichenfolge. Wir analysieren es mit JSON.parse():

if (xhr.readyState === XMLHttpRequest.DONE) {
  const response = JSON.parse(xhr.responseText);
  console.log(response); // Output: Parsed JavaScript object
}
Nach dem Login kopieren

Jetzt können wir die Eigenschaften des Objekts durchführen. Hier sind einige Möglichkeiten:

  • for...in Schleife:
for (const key in response) {
  if (response.hasOwnProperty(key)) {
    console.log(`${key}: ${response[key]}`);
  }
}
Nach dem Login kopieren
  • Object.entries(): Ein moderner und prägnanter:
Object.entries(response).forEach(([key, value]) => {
  console.log(`${key}: ${value}`);
});
Nach dem Login kopieren

JSON mit der fetch api:

abrufen

Die fetch API bietet einen saubereren, versprochenen Ansatz:

(async () => {
  const response = await fetch('https://icanhazdadjoke.com/', {
    headers: { Accept: 'application/json' },
  });
  const jsonData = await response.json();
  Object.entries(jsonData).forEach(([key, value]) => {
    console.log(`${key}: ${value}`);
  });
})();
Nach dem Login kopieren

response.json() analysiert die Antwortkörper als JSON und gibt ein Versprechen zurück, das mit den analysierten Daten auflöst.

Umgang mit JSON -Arrays:

Lassen Sie uns eine Liste von Repositorys aus der Github -API abrufen:

(async () => {
  const repos = await fetch('https://api.github.com/users/jameshibbard/repos').then(res => res.json());
  repos.forEach(repo => {
    console.log(`${repo.name} has ${repo.stargazers_count} stars`);
  });
})();
Nach dem Login kopieren

Dieses Beispiel zeigt das Iterieren durch ein JSON -Array mit forEach. Sie können andere Array -Methoden wie map oder filter für komplexere Operationen verwenden.

Schlussfolgerung:

Dieses Tutorial umfasste die wesentlichen Schritte des Parsens und Iterierens von JSON -Antworten in JavaScript unter Verwendung sowohl XMLHttpRequest als auch der fetch -API. Denken Sie daran, potenzielle Fehler (z. B. Netzwerkprobleme, ungültige JSON) in einer Produktionsumgebung zu bewältigen. Die fetch -API mit ihrem vielversprechenden Ansatz wird im Allgemeinen für ihre sauberere Syntax und bessere Funktionen zur Fehlerbehandlung bevorzugt.

Das obige ist der detaillierte Inhalt vonWie man eine JSON -Antwort in JavaScript durchläuft. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage