JSON(一种数据格式)
JSON 是 JavaScript 原生格式,这意味着在 JavaScript 中处理 JSON 数据不需要任何特殊的 API 或工具包。
可以创建一个新的 JavaScript 变量,然后将 JSON 格式的数据字符串直接赋值给它。
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>ajaxd的响应数据</title>
<script type="text/javascript">
var xhr;
function demo1() {
xhr = new XMLHttpRequest();
xhr.open("get","servlet/Ajax01",true);
xhr.onreadystatechange=function () {
if(xhr.status==200&&xhr.readyState==4){
var text = xhr.responseText;
var json=eval("("+text+")");
console.log(json.sex);
}
}
xhr.send(null);
}
function testJson() {
var json01={name:'zs',age:18,sex:'男'};
var json02={"age":18,"name":"李四","sex":"男"};
console.log(json01.name);
console.log(json02.name);
}
</script>
</head>
<body>
<button onclick="demo1()">触发Ajax</button>
<button onclick="testJson()">Json</button>
</body>
</html>
有时候后台给前台发送json数据,前台接收显示undefined,原因可能是因为前台虽然显示接收到了json数据,但是是json字符串,并不是json对象,所以使用eval(),就将字符串转化成了对象,就可以接收显示了。
JavaScript 函数 eval() 可用于将 JSON 文本转换为 JavaScript 对象。
eval() 函数使用的是 JavaScript 编译器,可解析 JSON 文本,然后生成 JavaScript 对象。必须把文本包围在括号中。
1.var obj = eval ("(" + txt + ")");
2.eval("var boj="+text);
JSON 通常用于与服务端交换数据,在接收服务器数据时一般是字符串。
可以使用 JSON.parse() 方法将数据转换为 JavaScript 对象。
XML和JSON:
JSON代码层次更清晰更容易阅读。由于字符简洁,在数据传输过程中,JSON比XML更优秀,