JavaScript 解析JSON
一、JSON
JSON的全称是”JavaScript Object Notation”,意思是JavaScript对象表示法,它是一种基于文本,独立于语言的轻量级数据交换格式。XML也是一种数据交换格式,为什么没有选择XML呢?因为XML虽然可以作为跨平台的数据交换格式,但是在JS(JavaScript的简写)中处理XML非常不方便,同时XML标记比数据多,增加了交换产生的流量,而JSON没有附加的任何标记,在JS中可作为对象处理,所以我们更倾向于选择JSON来交换数据。文件扩展名为 .json
。
目前大多数编程语言(例如 PHP、Java、.Net)都支持 JSON,JSON 中有两种基本的结构:
- 对象:由若干键/值对(即 key:value)组成的无序集合,每个对象以左花括号
{
开始,以右花括号}
结尾,多个键/值对之间使用逗号,
分隔
数组:一个有序的值列表,每个数组以左方括号[
开始,以右方括号]
结尾,多个值之间使用逗号,
分隔。
在 JSON 中,属性名称或键都是字符串格式的(需要使用英文的双引号括起来),而值则可以是任意类型。
{
"student": {
"name": "Tom",
"age": 18,
"birthday": "2002-01-01",
"sex": "男"
},
"Animal": [
"cat",
"dog",
"pig",
"chicken"
]
}
二、JavaScript解析JSON
在 JavaScript 中,您可以使用 JSON.parse() 方法来解析 JSON 数据
function show(){
var json='{"student": {"name": "Tom","age": 18,"birthday": "2002-01-01","sex": "男"}}';
var obj=JSON.parse(json);
console.log(obj.student);
}
三、JavaScript装载JSON
在开发过程中,有时我们需要将数据转换为 JSON 格式,方便客户端与服务器端进行数据交互。JavaScript 中提供了 JSON.stringify() 方法来将 JavaScript 值转换为 JSON 格式。
function show(){
var json={"student": {"name": "Tom","age": 18,"birthday": "2002-01-01","sex": "男"}};
var obj=JSON.stringify(json);
document.write(obj);
}