一、Javascrip操作json
原始方式: var str1 = '{ "name": "jacun", "addr": "bj" }'; var data=eval("("+str1+")");//转换为json对象 alert (data.name);//会显示出jacun
浏览器自带原生JSON对象,提供JSON.parse()方法解析JSON: if( typeof( str) === 'string' ) { return JSON.parse( str); } else { return str; }
二、json操作json
//由JSON字符串转换为JSON对象 var obj = eval('(' + str + ')'); var obj = str.parseJSON(); var obj = JSON.parse(str);
可以运用 toJSONString()或者全局要领 JSON.stringify()将JSON对象转化为JSON字符串 var last=obj.toJSONString(); //将JSON对象转化为JSON字符 var last=JSON.stringify(obj); //将JSON对象转化为JSON字符
三、JQuery获取json
jQuery.getJSON(url,data,success(data,status,str)) url 必需。规定将请求发送的哪个 URL。 data 可选。规定连同请求发送到服务器的数据。 success(data,status,str) 可选。规定当请求成功时运行的函数。 额外的参数: response - 包含来自请求的结果数据 status - 包含请求的状态 str- 包含 XMLHttpRequest 对象
eg:
$.getJSON("test.js", function(json){ alert("JSON Data: " + json.info[3].name); });
四、Java操作json
//JSON对象 JSONObject的使用 String str1 = "{ 'name': 'jacun', 'sex': '0' }"; JSONObject obj = JSONObject.fromObject(str1); String name = obj.getString("name"); //直接返回字符串型 jacun Object nameo = obj.get("name"); //直接返回对象型的jacun int age = obj.getInt("sex"); //直接返回int型的sex //JSON数组对象 JSONArray的运用 String jsonArrStr = "[{ 'name': 'jacun', 'sex': '1','website':'http://www.jacun.cn' },{ 'name': 'bai', 'sex': '1','website':'http://www.baidu.com' }]"; JSONArray array = JSONArray.fromObject(jsonArrStr); int size = array.size(); //获取JSON数组大小 JSONObject jo = array.getJSONObject(0);//取第一个JSON对象 for(int i=0;i<size;i++){ JSONObject jo1 = array.getJSONObject(i); System.out.println(jo1.getString("website")); //循环返回网址 } //序列化Bean对象为JSON对象 User user = new User(); user.setName("jacun"); user.setSex(1); user.setWebsite("http://www.jacun.com"); JSONObject jo2 = JSONObject.fromObject(user); System.out.println(jo2.toString()); //则会输出 { 'name': 'jacun', 'sex': '1','website':'http://www.jacun.cn' }
五、Python操作json
import json str1 = '{ "name": "jacun", "sex": "1" }' # 或者 # str1 = """{ "name": "jacun", "sex": "1" }""" # 或者 # str1 = "{ \"name\": \"jacun\", \"sex\": \"1\" }" obj = json.loads(str1) print(obj["name"]) print(obj["sex"]) # 由于出现中文,记得文件头加入 # coding:utf8 json_arr_str = """[{ "name": "jacun", "sex": "1","website":"http://www.jacun.com" },{ "name": "中国", "sex": "1","website":"http://www.jacun.com" }]""" arr = json.loads(json_arr_str) for o in arr: print(o["name"]) print(o["sex"]) print(o["website"])