在 JavaScript 中,我們經(jīng)常需要通過獲取 JSON 數(shù)據(jù)來實(shí)現(xiàn)網(wǎng)頁中的動(dòng)態(tài)交互。其中,get 請(qǐng)求是最常見的方式之一。本文將向您介紹如何使用 get 請(qǐng)求來獲取 JSON 數(shù)據(jù)。
var xhr = new XMLHttpRequest(); xhr.open("GET", "data.json", true); xhr.onreadystatechange = function() { if (xhr.readyState === 4 && xhr.status === 200) { var data = JSON.parse(xhr.responseText); console.log(data); } }; xhr.send();
上述代碼使用了 XMLHttpRequest 對(duì)象,該對(duì)象是 JavaScript 提供的一種 HTTP 請(qǐng)求 API。通過它,我們可以向服務(wù)器發(fā)送 HTTP 請(qǐng)求,并根據(jù)服務(wù)器返回的狀態(tài)進(jìn)行相應(yīng)的操作。在這里,我們使用 open() 方法打開一個(gè) GET 請(qǐng)求,并設(shè)定其訪問路徑為 data.json。當(dāng) readyState 的狀態(tài)變?yōu)?4 (即請(qǐng)求已完成)且 status 狀態(tài)碼為 200 (即請(qǐng)求成功)時(shí),通過 JSON.parse() 方法將返回的 JSON 數(shù)據(jù)轉(zhuǎn)換成 JavaScript 對(duì)象,并打印在控制臺(tái)上。
如果您需要將獲取到的數(shù)據(jù)展現(xiàn)在網(wǎng)頁上,您可以使用 DOM 操作來將其插入到指定的標(biāo)簽中。例如:
var xhr = new XMLHttpRequest(); xhr.open("GET", "data.json", true); xhr.onreadystatechange = function() { if (xhr.readyState === 4 && xhr.status === 200) { var data = JSON.parse(xhr.responseText); var ul = document.createElement("ul"); for (var i = 0; i< data.length; i++) { var li = document.createElement("li"); li.textContent = data[i].name + " - " + data[i].age; ul.appendChild(li); } document.body.appendChild(ul); } }; xhr.send();
上述代碼將 data.json 中的對(duì)象數(shù)據(jù)通過 DOM 操作,轉(zhuǎn)換成了一個(gè)無序列表,便于在網(wǎng)頁中顯示。
總結(jié)來說,通過 get 請(qǐng)求獲取 JSON 數(shù)據(jù)是一種常見的操作。通過 XMLHttpRequest 對(duì)象,我們可以發(fā)送請(qǐng)求、獲取并解析 JSON 數(shù)據(jù),還可以將其顯示在網(wǎng)頁中。希望此文對(duì)您有所幫助!