JSON (JavaScript Object Notation)一种简单的数据格式,比xml更轻巧。 JSON 是 JavaScript 原生格式,这意味着在 JavaScript 中处理 JSON 数据不需要任何特殊的 API 或工具包。
JSON的规则很简单: 对象是一个无序的“‘名称/值’对”集合。一个对象以“{”(左括号)开始,“}”(右括号)结束。每个“名称”后跟一个“:”(冒号);“‘名称/值’ 对”之间使用“,”(逗号)分隔。具体细节参考http://www.json.org/json-zh.html 举个简单的例子: js 代码
1. function showJSON() { 2. var user = 3. {
4. \"username\":\"andy\5. \"age\":20,
6. \"info\": { \"tel\": \"123456\7. \"address\": 8. [
9. {\"city\":\"beijing\10. {\"city\":\"newyork\11. ] 12. } 13.
14. alert(user.username); 15. alert(user.age);
16. alert(user.info.cellphone); 17. alert(user.address[0].city); 18. alert(user.address[0].postcode); 19.}
这表示一个user对象,拥有username, age, info, address 等属性。 同样也可以用JSON来简单的修改数据,修改上面的例子 js 代码
1. function showJSON() {
2. var user = 3. {
4. \"username\":\"andy\5. \"age\":20,
6. \"info\": { \"tel\": \"123456\7. \"address\": 8. [
9. {\"city\":\"beijing\10. {\"city\":\"newyork\11. ] 12. } 13.
14. alert(user.username); 15. alert(user.age);
16. alert(user.info.cellphone); 17. alert(user.address[0].city); 18. alert(user.address[0].postcode); 19.
20. user.username = \"Tom\"; 21. alert(user.username); 22.}
JSON提供了json.js包,下载http://www.json.org/json.js 后,将其引入然后就可以简单的使用object.toJSONString()转换成JSON数据。 js 代码
1. function showCar() {
2. var carr = new Car(\"Dodge\
3. alert(carr.toJSONString()); 4. } 5.
6. function Car(make, model, year, color) { 7. this.make = make; 8. this.model = model; 9. this.year = year; 10. this.color = color; 11.}
可以使用eval来转换JSON字符到Object
js 代码
1. function myEval() {
2. var str = '{ \"name\": \"Violet\;
3. var obj = eval('(' + str + ')'); 4. alert(obj.toJSONString()); 5. }
或者使用parseJSON()方法 js 代码
1. function myEval() {
2. var str = '{ \"name\": \"Violet\;
3. var obj = str.parseJSON(); 4. alert(obj.toJSONString()); 5. }
下面使用prototype写一个JSON的ajax例子。
先写一个servlet (我的是servlet.ajax.JSONTest1.java)就写一句话 java 代码
1. response.getWriter().print(\"{ \\\"name\\\": \\\"Violet\\\n\\\": \\\"character\\\" }\");
再在页面中写一个ajax的请求 js 代码
1. function sendRequest() {
2. var url = \"/MyWebApp/JSONTest1\"; 3. var mailAjax = new Ajax.Request( 4. url, 5. {
6. method: 'get',
7. onComplete: jsonResponse 8. }
9. ); 10.} 11.
12.function jsonResponse(originalRequest) { 13. alert(originalRequest.responseText);
14. var myobj = originalRequest.responseText.parseJSON(); 15. alert(myobj.name); 16.}
prototype-
1. function jsonResponse(originalRequest) { 2. alert(originalRequest.responseText);
3. var myobj = originalRequest.responseText.evalJSON(true); 4. alert(myobj.name); 5. }
JSON还提供了java的jar包 http://www.json.org/java/index.html API也很简单,下面举个例子
在javascript中填加请求参数 js 代码
1. function sendRequest() {
2. var carr = new Car(\"Dodge\
3. var pars = \"car=\" + carr.toJSONString(); 4.
5. var url = \"/MyWebApp/JSONTest1\"; 6. var mailAjax = new Ajax.Request( 7. url, 8. {
9. method: 'get', 10. parameters: pars,
11. onComplete: jsonResponse 12. }
13. ); 14.}
参考
http://www.json.org/js.html
http://www.blogjava.net/Jkallen/archive/2006/03/28/37905.html http://www.json.org/
http://www.prototypejs.org/learn/json http://www.json.org/java/index.html
http://www.ibm.com/developerworks/cn/web/wa-ajaxintro10/index.html
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- hzar.cn 版权所有 赣ICP备2024042791号-5
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务