Ajax02 json
目录
1 什么是json
JavaScript Object Notation(JavaScript 对象表示法)
是一种轻量级的数据交换格式。
注:
数据交换:将数据先转换成一种与平台无关的数据 格式(比如转换成xml),然后发送给接收方来处理。
轻量级:与xml相比,JSON文档更小,解析的速度更快。
2 json语法
2.1 表示一个对象
{属性名:属性值,属性名:属性值...}
JSON对象在大括号中书写
注:
属性名必须使用双引号括起来(即:属性名必须是字符串)。
属性值可以是string,number,true/false,null,object。
属性值如果是string,必须使用双引号括起来。

2.2 表示一个数组
JSON 数组在中括号中书写。
JSON 中数组值必须是合法的 JSON 数据类型(字符串, 数字, 对象, 数组, 布尔值或 null)。
JavaScript 中,数组值可以是以上的 JSON 数据类型,也可以是 JavaScript 的表达式,包括函数,日期,及 undefined

3 使用json
3.1 将Java对象转换成json字符串
使用json-lib(JSONObject,JSONArray)

package test; import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
import java.util.Random; import entity.Stock;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject; public class TestJson implements Serializable { private static void test01() {
Stock stock = new Stock();
stock.setCode(111);
stock.setName("重庆力帆");
stock.setPrice(10); System.out.println(stock); // 将Java对象装换成json字符串
JSONObject jsonObj = JSONObject.fromObject(stock);
String str = jsonObj.toString();
System.out.println(str);
} private static void test02() {
List<Stock> stocks = new ArrayList<Stock>();
Random r = new Random();
for(int i = 0; i < 4; i++) {
Stock stock = new Stock();
stock.setCode(111 + i);
stock.setName("重庆力帆0" + i);
stock.setPrice(r.nextInt(30)); stocks.add(stock);
} System.out.println(stocks); // 将多个Java对象组成的集合或者数组转换json字符串
JSONArray jsonArr = JSONArray.fromObject(stocks);
String arr = jsonArr.toString();
System.out.println(arr); } public static void main(String[] args) {
test01();
test02();
} }
Java对象转换成json字符串
3.2 将json字符串转换成js对象
javascript内置的一个对象JSON提供的方法(parse)
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<script type="text/javascript">
// 使用json语法表示一个对象
function f1() {
var obj = {"code":"123321","name":"fury","price":10};
alert(obj.name);
}; function f2() {
var obj = {"name":"庠序科技",
"address":{
"city":"重庆",
"street":"沙坪坝三峡广场",
"phone":12332188
}
};
alert(obj.address.street);
}; // 使用json语法表示一个由对象组成的数组
function f3() {
var arr = [
{"name":"warrior","age":24},
{"name":"fury","age":18}
];
alert(arr[1].name);
} // 将json字符串转换成javascript对象
function f4() {
var str = '{"name":"warrior", "age":24}';
// 利用javascript内置的JSON对象提供的方法来做转换
var obj = JSON.parse(str);
alert(obj.name);
} // 将json数组字符串转换成js数组
function f5() {
var str = '[{"name":"warrior","age":24},' +
'{"name":"fury","age":18}]';
// 注意:返回的是由js对象组成的数组
var arr = JSON.parse(str); alert(arr[1].name);
}
</script>
</head>
<body style="font-size:30px">
<a href="javascript:f1();">ClickMe 1</a>
<hr />
<a href="javascript:f2();">AlsoClickMe 2</a>
<hr />
<a href="javascript:f3();">To clicke me 3</a>
<hr />
<a href="javascript:f4();">Clike Me 4</a>
<hr />
<a href="javascript:f5();">Also Clike Me 5</a>
</body>
</html>
json字符串转换成js对象
4 利用jQuery实现ajax编程
利用jQuery实现ajax编程只需要实现 $.ajax() 方法就行了
4.1 用法
$.ajax({});

4.2 常见的选项参数有这样一些
url: 请求地址。
type: 请求类型(比如 'get')。
data: 请求参数,有两种格式:
第一种:请求字符串形式,比如 "size=3"。
第二种:对象形式,比如 {"size":3} 。

dataType:服务器返回的数据类型(text: 文本, json: json字符串, xml: xml文档)
success:当服务器处理正确,用来处理服务器返回的 数据的函数。
error:当服务器出错,用来处理异常的函数。
本博客源代码:点击前往
Ajax02 json的更多相关文章
- Ajax02 什么是json、json语法、json的使用、利用jQuery实现ajax
目录 1什么是json 2json语法 3json的使用 4利用jQuery实现ajax编程 1 什么是json JavaScript Object Notation(JavaScript 对象表示法 ...
- 使用TSQL查询和更新 JSON 数据
JSON是一个非常流行的,用于数据交换的文本数据(textual data)格式,主要用于Web和移动应用程序中.JSON 使用“键/值对”(Key:Value pair)存储数据,能够表示嵌套键值对 ...
- 【疯狂造轮子-iOS】JSON转Model系列之二
[疯狂造轮子-iOS]JSON转Model系列之二 本文转载请注明出处 —— polobymulberry-博客园 1. 前言 上一篇<[疯狂造轮子-iOS]JSON转Model系列之一> ...
- 【疯狂造轮子-iOS】JSON转Model系列之一
[疯狂造轮子-iOS]JSON转Model系列之一 本文转载请注明出处 —— polobymulberry-博客园 1. 前言 之前一直看别人的源码,虽然对自己提升比较大,但毕竟不是自己写的,很容易遗 ...
- Taurus.MVC 2.2 开源发布:WebAPI 功能增强(请求跨域及Json转换)
背景: 1:有用户反馈了关于跨域请求的问题. 2:有用户反馈了参数获取的问题. 3:JsonHelper的增强. 在综合上面的条件下,有了2.2版本的更新,也因此写了此文. 开源地址: https:/ ...
- .NET Core系列 : 2 、project.json 这葫芦里卖的什么药
.NET Core系列 : 1..NET Core 环境搭建和命令行CLI入门 介绍了.NET Core环境,本文介绍.NET Core中最重要的一个配置文件project.json的相关内容.我们可 ...
- 一个粗心的Bug,JSON格式不规范导致AJAX错误
一.事件回放 今天工作时碰到了一个奇怪的问题,这个问题很早很早以前也碰到过,不过没想到过这么久了竟然又栽在这里. 当时正在联调一个项目,由于后端没有提供数据接口,于是我直接本地建立了一个 json ...
- JSON.parse()和JSON.stringify()
1.parse 用于从一个字符串中解析出json 对象.例如 var str='{"name":"cpf","age":"23&q ...
- json与JavaScript对象互换
1,json字符串转化为JavaScript对象: 方法:JSON.parse(string) eg:var account = '{"name":"jaytan&quo ...
随机推荐
- Centos 在 Xshell里 vim的配置
Centos里的VI只默认安装了vim-minimal-7.x.所以无论是输入vi或者vim查看文件,syntax功能都无法正常启用.因此需要用yum安装另外两个组件:vim-common-7.x和v ...
- c#FTP操作类,包含上传,下载,删除,获取FTP文件列表文件夹等Hhelp类
有些时间没发表文章了,之前用到过,这是我总结出来关于ftp相关操作一些方法,网上也有很多,但是没有那么全面,我的这些仅供参考和借鉴,希望能够帮助到大家,代码和相关引用我都复制粘贴出来了,希望大家喜欢 ...
- .dll 文件编写和使用
1.基本概念 dll(dynamic-link library),动态链接库,是微软实现共享函数库的一种方式.动态链接,就是把一些常用的函数代码制作成dll文件,当某个程序调用到dll中的某个函数的时 ...
- ios 视频拼接/合成
上面的图说明的是这个混合的过程,下面放代码: - (void)mergeAndExportVideos:(NSArray*)videosPathArray withOutPath:(NSString* ...
- Linux下deb包安装工具(附带安装搜狗输入法)
环境是在ubuntu14下的 #1.gdebi安装 使用deb安装工具gdebi,这个工具能解决所有依赖问题 sudo apt-get install gdebi #2.搜狗输入法 deb包下载地址: ...
- AFNetworking 用法详解
之前一直使用ASIHttpRequest 做网络请求 ,后来新公司用AFNetWorking ,经过一段时间学习总结一下二者的优缺点: 1.AFNetWorking的优缺点 优点: 1.维护和使用者比 ...
- 凭证(Credential)
在SQL Server中,凭证(Credential)用于把Windows用户的身份验证信息(在Windows环境下,是Windows 用户名和密码)存储在SQL Server实例中,并把该身份验证信 ...
- stm32中断学习总结
经过了两天,终于差不多能看懂32的中断了,由于是用的库函数操作的,所以有些内部知识并没有求甚解,只是理解知道是这样的.但对于要做简单开发的我来说这些已经够了. 我学习喜欢从一个例程来看,下面的程序是我 ...
- 频繁模式挖掘中Apriori、FP-Growth和Eclat算法的实现和对比
最近上数据挖掘的课程,其中学习到了频繁模式挖掘这一章,这章介绍了三种算法,Apriori.FP-Growth和Eclat算法:由于对于不同的数据来说,这三种算法的表现不同,所以我们本次就对这三种算法在 ...
- Composer 中国全量镜像(二)
一.查看当前镜像地址 在命令行输入如下命令,即可查看镜像地址: $ composer config -g repo.packagist {"type":"composer ...