JSON 服务器
JSON 的常见用途是与 Web 服务器交换数据。
当从 Web 服务器接收数据时,数据始终是字符串。
使用 JSON.parse()
解析数据,数据将成为 JavaScript 对象。
发送数据
如果您有存储在 JavaScript 对象中的数据,您可以将其转换为 JSON,然后发送到服务器
示例
const myObj = {name: "John", age: 31, city: "New York"};
const myJSON = JSON.stringify(myObj);
window.location = "demo_json.php?x=" + myJSON;
自己动手试一试 »
接收数据
如果您收到 JSON 格式的数据,可以轻松将其转换为 JavaScript 对象
示例
const myJSON = '{"name":"John", "age":31, "city":"New York"}';
const myObj = JSON.parse(myJSON);
document.getElementById("demo").innerHTML = myObj.name;
自己动手试一试 »
来自服务器的 JSON
您可以使用 AJAX 请求从服务器请求 JSON
只要服务器的响应是用 JSON 格式编写的,您就可以将字符串解析为 JavaScript 对象。
示例
使用 XMLHttpRequest 从服务器获取数据
const xmlhttp = new XMLHttpRequest();
xmlhttp.onload = function() {
const myObj = JSON.parse(this.responseText);
document.getElementById("demo").innerHTML = myObj.name;
};
xmlhttp.open("GET", "json_demo.txt");
xmlhttp.send();
自己动手试一试 »
请查看 json_demo.txt
JSON 作为数组
当对从数组派生的 JSON 使用 JSON.parse()
时,该方法将返回一个 JavaScript 数组,而不是 JavaScript 对象。
示例
服务器返回的 JSON 是一个数组
const xmlhttp = new XMLHttpRequest();
xmlhttp.onload = function() {
const myArr = JSON.parse(this.responseText);
document.getElementById("demo").innerHTML = myArr[0];
}
}
xmlhttp.open("GET", "json_demo_array.txt", true);
xmlhttp.send();
自己动手试一试 »