读取解析json串
json格式有两种:一种是json对象,一种是json数组
一、json对象
JSON 对象使用在大括号({})中书写。
json对象的访问方式,例:
var obj={
"name":"mike",
"phone":"12781272",
"friend":{
"friend1":"nn",
"friend2":"mm",
"friend3":"yy",
}
}
访问:
var x=obj.friend.friend1或者var x=obj.friend["friend1"]
二、json数组
JSON 数组在中括号中书写。
json数组的访问方式,例:
obj = {
"name":"网站",
"num":3,
"sites": [
"name":"Google"
"name":"Runoob"
"name":"Taobao"
]
}
json对象中的数组
访问方式:var x=
obj.sites[0]
三、json.prase()
通常用于接受服务器端的json格式数据,将其转化成为JavaScript 对象。
1、将数据序列化后发送给服务器
function changxi(y1){
var url = "http://192.168.0.117/behind/audio2.php"
var temp_response;
var param_str=
{
"PersonalPhone":y1,
}
data = older(param_str)
var xhr = new XMLHttpRequest();
xhr.open('POST', url, false);//新建一个http连接,false为同步,true为一步
xhr.onreadystatechange = function () {//声明回调函数
if (xhr.readyState == 4 && (xhr.status >= 200 && xhr.status < 400)) {
var response = xhr.responseText;//接受返回json
cc.log(response)
temp_response= response
}
};
xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded;charset=utf-8");
cc.log(data)
xhr.send(data)
return temp_response
}
2、接受服务器发来的数据
例:
{ "name":"rrr", "alexa":1222, "site":"sdfsdf" }
转化
var obj = JSON.parse('{ "name":"rrr", "alexa":1222, "site":"sdfsdf" }');