文档章节

json - JSON对象

lemos
 lemos
发布于 2016/11/23 19:41
字数 348
阅读 5
收藏 0

与xml相比,json可以把其数据结构解析为有用的javascript对象。 而xml需要解析成dom文档,再从中提取数据。

对比:

json 解析为javascript后,只需要 book[2].title

而对于xml, doc.getElementByTagName("book")[2].getAttribute("title")

json 对象:

早期的json解析器,使用js的eval()函数。因为json是js的子集,因此eval() 函数可以解析、解释、并返回js对象和数组。

在旧版浏览器中,使用eval()对json求值存在风险。一般使用shim解析。 ECMAScript5 对解析json的行为进行了规范,定义了全局对象 json。

json 对象有两个方法。stringify() 和 parse() 这两个方法用于把js对象序列化为json字符串和把json字符串解析为原声的js值。
例如:

var book = {
    title: "Professional JavaScript",
    authers: [
        "Nicholas C. Zakas"
    ],
    edition:3,
    year:2011
};

var jsonText = JSON.stringify(book);

这个例子使用JSON.stringify( xx) 将一个js对象变成了一个json字符串 。默认情况下,保存的json串不包含任何空格字符或缩进。

例如:

var bookCopy  = JSON.parse(jsonText);

这个例子使用 JSON.parse可以将一个json串转换成js对象。

**注意: ** 在序列化js对象时,所有的函数和原型成员都会被忽略,且值为undifines的成员也会被跳过。结果中都是值为有效的json数据类型的实例属性。

© 著作权归作者所有

共有 人打赏支持
lemos
粉丝 6
博文 178
码字总数 90724
作品 0
芜湖
后端工程师
js 实现json字符串和json对象的相互转化

在数据传输过程中,json是以文本,即字符串的形式传递的,而JS操作的是JSON对象,所以,JSON对象和JSON字符串之间的相互转换是关键。例如: JSON字符串: var str1 = '{ "name": "cxh", "sex...

笨小熊
2015/10/10
199
0
房产证样本 2018年江苏不动产权证样本 重庆市房产证

1.简单的解析json字符串 首先将json字符串转换为json对象,然后再解析json对象,过程如下。 JSONObject jsonObject = JSONObject.fromObject(jsonStr); 2.将json字符串转换为java对象 同样先...

json大师
08/25
0
0
js 将 json 字符串转换为 json 对象

例如: JSON字符串: var str1 = '{ "name": "cxh", "sex": "man" }'; JSON对象: var str2 = { "name": "cxh", "sex": "man" }; 一、JSON字符串转换为JSON对象 要使用上面的str1,必须使用下面...

Jack088
2016/05/29
59
1
JSON学习总结

什么是 JSON ? JSON 指的是 JavaScript 对象表示法(JavaScript Object Notation) JSON 是轻量级的文本数据交换格式 JSON 独立于语言 * JSON 具有自我描述性,更易理解 * JSON 使用 JavaSc...

拷贝忍者卡卡习
2016/04/02
6
0
json字符串转为json对象

例如:JSON字符串:var str1 = '{ "name": "cxh", "sex": "man" }';JSON对象:var str2 = { "name": "cxh", "sex": "man" }; 一、JSON字符串转换为JSON对象要使用上面的str1,必须使用下面的方...

ITCHN
2016/12/22
2
0

没有更多内容

加载失败,请刷新页面

加载更多

使用rancher管理docker并部署springCloud项目的其中一个服务

一、先来个简单的 1.安装docker 2.安装eureka——运行docker命令安装 3.安装eureka——运行dokcer镜像安装 (1)构建eureka的镜像,网易云的docker镜像比较全一些,也可以去https://hub.docke...

monroeCode
2分钟前
0
0
理论与实践:如何从Hadoop迁移到MaxCompute

摘要:MaxCompute大数据计算服务,能提供快速、完全托管的PB级数据仓库解决方案,能够使用户经济且高效地分析处理海量数据。而用户往往之前使用了Hadoop实现大数据计算任务,在选择了阿里云大...

阿里云云栖社区
3分钟前
1
0
mysql: utf8 && utf8mb4

https://mathiasbynens.be/notes/mysql-utf8mb4 临时收藏

阿dai
14分钟前
0
0
面试宝典系列-nginx限流

Nginx自身有的请求限制模块ngx_http_limit_req_module、流量限制模块ngx_stream_limit_conn_module基于令牌桶算法,可以方便的控制令牌速率,自定义调节限流,实现基本的限流控制。 如何Ngi...

suyain
15分钟前
0
0
下拉框选择数据过滤?

需求:下拉框数据新增一条数据,已选择的不能再重新被选择 数据:存放表格数据的数组 scoreTable 下拉框数据 catorgaryArr 定义一个已经选择了的id数组 catorgaryIds 实现: arr 使用来保存每...

西园里的猫
20分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部