六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 46|回复: 0

什么是JSON?

[复制链接]

升级  91.2%

298

主题

298

主题

298

主题

进士

Rank: 4

积分
956
 楼主| 发表于 2013-1-29 11:23:51 | 显示全部楼层 |阅读模式
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,它采用完全独立于语言的文本格式,可替换XML成为AJAX程序中的数据交换格式。

它有两种结构:
“名称/值”对的集合(A collection of name/value pairs)。不同的语言中,它被理解为对象(object),纪录(record),结构(struct),字典(dictionary),哈希表(hash table),有键列表(keyed list),或者关联数组 (associative array)。
值的有序列表(An ordered list of values)。在大部分语言中,它被理解为数组(array)。
JSON是JavaScript的子集,我们在JavaScript中可以很容易的使用它。

下面是官方网站上面提供的一个例子:

var myJSONObject = {"bindings": [{"ircEvent": "PRIVMSG", "method": "newURI", "regex": "^http://.*"},{"ircEvent": "PRIVMSG", "method": "deleteURI", "regex": "^delete.*"},{"ircEvent": "PRIVMSG", "method": "randomURI", "regex": "^random.*"}]};
这个例子中,创建了一个对象,它只包含一个成员“bindings”。“bindings”中有一个包含了3个对象的数组,而这每个对象都有"ircEvent"、"method"和"regex"3个成员。

myJSONObject.bindings[0].method 的值是 "newURI"


JSON官方网站提供的一个开源的JSON解析器和字符串转换器:json.js

string.parseJSON() 解析函数,它将JSON文本解析成object或者array,可以抛出一个语法错误的异常;
array.toJSONString(),
boolean.toJSONString() ,
date.toJSONString(),
number.toJSONString(),     
object.toJSONString(),
string.toJSONString(): 这几个函数可以生成JSON文本

下面写一个简单的解析和转换的例子:

var str='["0","1"]';
var obj = str.parseJSON();
document.write(obj[0]);
document.write(obj[1]);
结果是01

var doc = new Array();
doc[0]='0';
doc[1]='1';
document.write(doc.toJSONString())
结果是["0","1"]


资源:
官方网站:http://www.json.org
JSON解析和转换器下载:http://www.json.org/json.js
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表