dan lebih moden XMLHttpRequest
api. fetch
Konsep Utama:
for...in
, Object.entries
, atau kaedah array (Object.values
forEach
data json boleh disusun dalam dua cara:
: XMLHttpRequest
mari kita gunakan API
ditetapkan ke icanhazdadjoke
. Accept
application/json
Pertama, kita mengambil data:
Respons adalah rentetan. Kami menghuraikannya menggunakan
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);
JSON.parse()
if (xhr.readyState === XMLHttpRequest.DONE) { const response = JSON.parse(xhr.responseText); console.log(response); // Output: Parsed JavaScript object }
for...in
for (const key in response) { if (response.hasOwnProperty(key)) { console.log(`${key}: ${response[key]}`); } }
Object.entries()
Object.entries(response).forEach(([key, value]) => { console.log(`${key}: ${value}`); });
api: fetch
API
fetch
(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}`); }); })();
response.json()
mari kita ambil senarai repositori dari API GitHub:
Contoh ini menunjukkan lelaran melalui array JSON menggunakan
(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`); }); })();
atau forEach
untuk operasi yang lebih kompleks. map
filter
Tutorial ini meliputi langkah -langkah penting parsing dan meleleh melalui respons JSON dalam JavaScript, menggunakan kedua -dua XMLHttpRequest
dan fetch
API. Ingatlah untuk mengendalikan kesilapan yang berpotensi (mis., Isu rangkaian, JSON tidak sah) dalam persekitaran pengeluaran. API fetch
, dengan pendekatan berasaskan janjinya, biasanya lebih disukai untuk sintaks bersih dan keupayaan pengendalian ralat yang lebih baik.
Atas ialah kandungan terperinci Cara gelung melalui respons json di javascript. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!