JSON(JavaScript Object Notation‘JavaScript对象表示法’)
一种轻量级的数据交换技术规范,简单理解就一种存储数据的格式,该格式与平台无关。
存储数据的类型有:Object/String/Array/null/boolean/Number
支持的标记符:, {} [] “” :
JSON对象创建:
1,new方式:
Object object=new Object();
object.name=lw;
object.age=26;
2,function方式:
function object(name,age){
this.naem=name;
this.age=age;
}
var Object =new Object("lw",26);
3,JSON语法:
var object={“name”:“lw”,“age”:“26”}
出现的形式:
1,对象
{"preson":"name"}
2,数组
[{"preson":"name"},{"preson":"age"}]
3对象与数组混合
{“preson”:[{"age":25},{"name":"lw"}]}
实际工作中一般都是对象与数组混合模式
作用:作为前后台数据的载体(网上都称为交换格式);
原因:平台无关,结构轻巧,易于解析;
与XML比较优点
1,结构更简洁,标识符少,占带宽少,传输更快捷
2,服务端可以直接调用,简化的代码,利用维护
3,主要战场还是在JavaScript
JSON对象前后台的解析
前台:eval(JSON数据)/JSON.perse(JSON数据)前者不稳定,各大浏览器有差异。后者稳定,但是书写方式要严格遵守JSON语法规定
后台:JSONObject/JSONArray 记得导入相关包
JSONArray json=new JSONArray();通过put方法,往JSON对象中加数据
JSONArray json=JSONArray.fromObject(数据);
JSON在Ajax之间的交换
交互之前准备js:prototype.js/jquery1.3.2.min.js/json2.js或其他js
1get请求方式
function getType(){
$.get(
"url",
JSON数据,
function(data){
var obj=eval(data);
alert(obj.success);
});
}
2,post请求方式
function getType(){
$.post(
"url",
JSON数据,
function(data){
var obj=eval(data);
alert(obj.success);
});
}
3,$.Ajax请求方式function getType(){
$.ajax({
type:"post",
data:JSON数据,
datatype:"json"
url:xxxxxxx,
success:function(data){
var obj=eval(data);
alert(obj.success);
}
error:function(){
}
});
}