JSON (JavaScript Object Notation)一种简单的数据格式,比xml更轻巧。 JSON 是 JavaScript 原生格式,这意味着在 JavaScript 中处理 JSON 数据不需要任何特殊的 API 或工具包。
举个简单的例子:
js 代码
- function showJSON() {
- var user =
- {
- "username":"andy",
- "age":20,
- "info": { "tel": "123456", "cellphone": "98765"},
- "address":
- [
- {"city":"beijing","postcode":"222333"},
- {"city":"newyork","postcode":"555666"}
- ]
- }
-
- alert(user.username);
- alert(user.age);
- alert(user.info.cellphone);
- alert(user.address[0].city);
- alert(user.address[0].postcode);
- }
这表示一个user对象,拥有username, age, info, address 等属性。
同样也可以用JSON来简单的修改数据,修改上面的例子
js 代码
- function showJSON() {
- var user =
- {
- "username":"andy",
- "age":20,
- "info": { "tel": "123456", "cellphone": "98765"},
- "address":
- [
- {"city":"beijing","postcode":"222333"},
- {"city":"newyork","postcode":"555666"}
- ]
- }
-
- alert(user.username);
- alert(user.age);
- alert(user.info.cellphone);
- alert(user.address[0].city);
- alert(user.address[0].postcode);
-
- user.username = "Tom";
- alert(user.username);
- }
js 代码
- function showCar() {
- var carr = new Car("Dodge", "Coronet R/T", 1968, "yellow");
- alert(carr.toJSONString());
- }
-
- function Car(make, model, year, color) {
- this.make = make;
- this.model = model;
- this.year = year;
- this.color = color;
- }
可以使用eval来转换JSON字符到Object
js 代码
- function myEval() {
- var str = '{ "name": "Violet", "occupation": "character" }';
- var obj = eval('(' + str + ')');
- alert(obj.toJSONString());
- }
或者使用parseJSON()方法
js 代码
- function myEval() {
- var str = '{ "name": "Violet", "occupation": "character" }';
- var obj = str.parseJSON();
- alert(obj.toJSONString());
- }
下面使用prototype写一个JSON的ajax例子。
先写一个servlet (我的是servlet.ajax.JSONTest1.java)就写一句话
java 代码
- response.getWriter().print("{ \"name\": \"Violet\", \"occupation\": \"character\" }");
再在页面中写一个ajax的请求
js 代码
- function sendRequest() {
- var url = "/MyWebApp/JSONTest1";
- var mailAjax = new Ajax.Request(
- url,
- {
- method: 'get',
- onComplete: jsonResponse
- }
- );
- }
-
- function jsonResponse(originalRequest) {
- alert(originalRequest.responseText);
- var myobj = originalRequest.responseText.parseJSON();
- alert(myobj.name);
- }
prototype-1.5.1.js中提供了JSON的方法,String.evalJSON(), 可以不使用json.js, 修改上面的方法
js 代码
- function jsonResponse(originalRequest) {
- alert(originalRequest.responseText);
- var myobj = originalRequest.responseText.evalJSON(true);
- alert(myobj.name);
- }
在javascript中填加请求参数
js 代码
- function sendRequest() {
- var carr = new Car("Dodge", "Coronet R/T", 1968, "yellow");
- var pars = "car=" + carr.toJSONString();
-
- var url = "/MyWebApp/JSONTest1";
- var mailAjax = new Ajax.Request(
- url,
- {
- method: 'get',
- parameters: pars,
- onComplete: jsonResponse
- }
- );
- }
使用JSON请求字符串就可以简单的生成JSONObject并进行解析,修改servlet添加JSON的处理(要使用json.jar)
java 代码
- private void doService(HttpServletRequest request, HttpServletResponse response) throws IOException {
- String s3 = request.getParameter("car");
- try {
- JSONObject jsonObj = new JSONObject(s3);
- System.out.println(jsonObj.getString("model"));
- System.out.println(jsonObj.getInt("year"));
- } catch (JSONException e) {
- e.printStackTrace();
- }
- response.getWriter().print("{ \"name\": \"Violet\", \"occupation\": \"character\" }");
- }
同样可以使用JSONObject生成JSON字符串,修改servlet
java 代码
- private void doService(HttpServletRequest request, HttpServletResponse response) throws IOException {
- String s3 = request.getParameter("car");
- try {
- JSONObject jsonObj = new JSONObject(s3);
- System.out.println(jsonObj.getString("model"));
- System.out.println(jsonObj.getInt("year"));
- } catch (JSONException e) {
- e.printStackTrace();
- }
-
- JSONObject resultJSON = new JSONObject();
- try {
- resultJSON.append("name", "Violet")
- .append("occupation", "developer")
- .append("age", new Integer(22));
- System.out.println(resultJSON.toString());
- } catch (JSONException e) {
- e.printStackTrace();
- }
- &n
分享到:
相关推荐
PHP与AJAX返回json数据调用.zip
例如,构建脚本可能读取配置文件(如`gradle.properties`)中的API密钥,并使用这些信息来调用外部服务获取或发送JSON数据。同时,Gradle插件也可以处理JSON格式的配置,帮助开发者更方便地管理和操作JSON数据。
PB调用http、api,PB解析json; PB调用http、api,PB解析json; PB调用http、api,PB解析json; PB调用http、api,PB解析json; PB调用http、api,PB解析json; PB调用http、api,PB解析json; PB调用http、api,PB解析...
本文将详细介绍如何在微信小程序中调用JSON数据接口并进行解析。 首先,微信小程序提供了`wx.request`方法用于发起网络请求,这是实现数据接口调用的核心方法。开发者需要在小程序的页面代码中定义该方法,并通过...
综上所述,通过Java调用带有JSON参数的WebService,涉及到了Java编程语言的使用、JSON数据格式的处理以及WebService通信机制。开发者需要掌握这些技术来实现不同类型的应用程序之间的互操作性和数据交换。
本文将深入探讨如何使用JavaScript调用Android的方法,并传递JSON数据,以实现两者之间的高效通信。 首先,我们需要了解`Android WebView`。WebView是Android系统提供的一种组件,它能够加载并显示网页内容,就像是...
在VB(Visual Basic)编程环境中,使用官方API来读写JSON数据格式文件是常见的操作,尤其是在处理网络数据交换或者存储配置信息时。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和...
这一过程涉及到多个技术点,包括网络通信、API接口调用以及JSON数据处理。 1. **PB调用HTTP API**:PowerBuilder支持通过.NET或OLE Automation等方式调用HTTP接口。这通常涉及创建一个对象,如.NET的HttpClient或...
在.NET框架下,可以通过多种方式实现数据的序列化与反序列化,从而支持JSON数据的处理。 #### 一、理解题目背景 根据题目描述:“只需要将`dt`传过来就能够生成json类型数据”。这里的`dt`指的应该是一个`...
这里我们关注的是动态调用WebService并处理返回的JSON数据,然后将这些数据展示在GridView中。这个过程涉及到的技术主要包括:WebService的调用、JSON数据解析以及数据绑定到GridView。 首先,让我们来理解...
"银行及对应的简码json数据"这个主题涉及到了数据存储、编码系统以及JSON(JavaScript Object Notation)这种轻量级的数据交换格式。JSON因其易读性、易解析性和平台无关性而被广泛应用于Web服务和应用程序之间的...
关于"jQuery读取json数据"这个主题,我们将会深入探讨如何利用jQuery的Ajax功能来高效地加载和解析JSON格式的数据,以及这样做带来的优势。 JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,它易于...
这个压缩包“Layui调用json获取表格动态数据代码.zip”包含了一系列的HTML文件和相关资源,用于演示如何使用Layui来从JSON数据源动态加载表格数据。下面我们将详细探讨这一主题。 首先,Layui的表格组件提供了丰富...
标题中的“全球地图echarts json数据”指的是使用ECharts库绘制全球地图时所需要的数据格式,通常是JSON(JavaScript Object Notation)文件。ECharts是一个由百度开发的基于JavaScript的数据可视化库,它提供了丰富...
在VB(Visual Basic 6)中,处理JSON数据格式文件是一项常见的任务,特别是在与Web服务交互或存储配置信息时。本实例将详细讲解如何利用官方API实现VB对JSON的读写操作,帮助开发者更好地理解这一过程。 首先,JSON...
C#中通过直接添加引用的方来调用Web Service的方式不够灵活,故采取手动发送Http请求的方式来调用Web Service。最后选择使用Post方式来调用Web Service
Bootstrap Table是一种...本主题主要关注如何在Bootstrap Table中动态加载JSON数据并实现分页功能。 首先,我们需要理解Bootstrap Table的基本结构。一个基本的Bootstrap Table可以通过以下HTML代码创建: ```html ...
Revit模型转换为JSON数据是建筑信息模型(BIM)领域中的一个重要操作,它涉及到软件间的交互和数据交换。Revit是一款由Autodesk公司推出的建筑设计、结构工程和MEP(机械、电气、管道)工程的专业软件,它允许用户创建...
在这个文件中,我们可以看到如何设置正则表达式,如何调用易语言的相关函数,以及如何处理匹配到的Json数据。通常,这样的源码会包含读取Json字符串、构造正则表达式、执行匹配操作以及提取结果等步骤。 为了更好地...