开发者学堂课程【Ajax:JSON的概述】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/31
JSON的概述
json是js提供的一种数据交换格式(一种格式转换成另一种格式)。
json语法中{}是对象,其中需要注意的是属性名必须要使用双引号括起来,单引不行。
属性值有null,数值,字符串,数组(使用[]括起来),boolean值(ture和false)。
json应用如下:
. 应用json
★var person = {"name" :"zhangSan", "age":18, "sex":"male");| |
例如:
window.onload = function() 1
var person = ("name": "zhangSan", "age": 18, "gex": "male"l;
alext (person.name + ", " + person.aget+",
“+ person.sex) ; |
如果给的是字符串或者双引号引起来的必须得是eva1(“(“+str+”)”)
例如:
varstr="1+2";
var sum = eval("("+ str +")");
alert (sum) ; |
向客户端发送json串
string str = "[l"namel":l"zhangSan", "agel":18, "sexl":l"malel")";
response getWriter () print (str);
System. out. println (str) ; |
json2.jsp点击按钮后,把服务器响应的数据显示到h3元素中
第一步要得到request,第二步要链接,第三步要发送,第四步要给xmlHttp的状态改变事件上添加监听,其中需要双重判断,具体如下:
//使用aj ax得到服务器端响应,把结果显示到h3中
Jrequest
.连接
xmlHttp.open("GET", "<c:url value=' /Aservlet'/>", true) ;
发送
xmlHttp .send (null);
.给xmlHttp的状态改变事件上添加监听
if (xanlhttp. readystateキ4 && xm1Http.status = 200) {
var text = xmlHttp. responseText;//它是- -个json串
执行json串
var person = eval("("+ text+")");
var s = person.dame +"r"tperson.age+",“+person.sex
document . getElementById("h3").innerHTM = s; |
json与xml的比较:
可读性:XML胜出
解析难度: JSON本身就是Js对象《主场作战),所以简单很多
流行度: XML已经流行好多年,但在AJAX领域,JSON更受欢迎。