JSON数据交换格式详解:字符串限制与数字格式

需积分: 9 10 下载量 157 浏览量 更新于2024-08-18 收藏 133KB PPT 举报
本文主要介绍了如何使用JSON与Struts2、Ajax以及JQuery联合使用,以实现数据交换和页面交互。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,它基于JavaScript的一个子集,但能被多种编程语言理解和处理。 在JSON中,可以创建两种基本的数据对象: 1. **JSON对象**:使用键/值对的形式表示,键和值之间用冒号分隔,键值对之间用逗号分隔,并包裹在大括号`{}`中。例如: ```javascript var myJSONObject = { "name": "张三", "age": 10, "address": "株洲" }; ``` 若JSON字符串中包含中文字符,需要确保页面编码为UTF-8,如通过`<meta>`标签设置页面编码。 2. **JSON数组**:由一系列元素构成,元素之间用逗号分隔,包裹在方括号`[]`内。例如: ```javascript var myJSONObject = ["abc", 12345, true, false, null]; ``` 创建JSON时有一些限制: - **特殊字符转义**:字符`"`, `/`, `\`以及一些控制字符(如`\b`, `\f`, `\n`, `\r`, `\t`)需要转义,转义方式为`\`后跟相应字符。例如:`\\"`, `\\`, `\'`. - **数字格式**:JSON支持整数、小数和科学记数法的数字,如`12`, `12.3`, `-12.3e10`. 此外,JSON还可以创建嵌套的对象和数组,使得数据结构更加复杂和灵活。例如: ```javascript var myJSONObject = { "person": { "name": "张三", "age": 10 }, "locations": ["株洲", "长沙"] }; ``` 这样的JSON对象可以包含一个对象(`person`)和一个数组(`locations`)。 结合Struts2和Ajax,可以实现服务器端和客户端的数据交互。Struts2提供JSON结果类型,允许Action返回JSON格式的数据,而Ajax(通常使用JQuery库)则用于在不刷新整个页面的情况下,异步发送请求获取JSON数据并更新页面。例如,使用JQuery的`$.ajax`或`$.getJSON`方法: ```javascript $.ajax({ url: 'your_action_url', type: 'POST', // 或者 'GET' dataType: 'json', // 告诉jQuery期望的返回数据类型 success: function(data) { // data是服务器返回的JSON对象 console.log(data.person.name); // 访问嵌套对象的属性 } }); ``` 在这个过程中,Struts2 Action会处理请求,根据业务逻辑生成JSON数据,然后Ajax回调函数可以解析这些数据并进行相应的操作,如更新DOM元素。 JSON作为数据交换格式,与Struts2、Ajax以及JQuery结合使用,能够有效地实现前后端的交互,提高Web应用的用户体验。