www.cftea.com

JavaScript 中处理 JSON

ITPOW2016/10/23 14:16:26

JavaScript 中 JSON 对象的特别说明

如下三句代码是等效的:

var json = { "p1" : "a" };

var json = { 'p1' : "a" };

var json = { p1 : "a" };

JavaScript 中,JSON 对象属性名称使用双引号、使用单引号、不使用引号都可以,同样,JavaScript 在处理 JSON 格式的字符串时也是如此。

不过这仅限于 JavaScript 中,标准的是需要双引号,如果考虑与其他系统交换,一定要用双引号。

本文偷懒,都没加双引号。

JSON 对象使用

上面的代码已经将 JavaScript 中对 JSON 的处理列出来了,很简单。

JSON 格式字符串转换成 JSON 对象

实际中,JSON 作为数据交换,往往是以字符串形式来传输的,虽然是 JSON 格式的,但它毕竟是字符串,不是对象,我们怎么转换为对象呢?

看到了吧,核心就是 eval。

JSON 对象转换成 JSON 格式的字符串

如果是固定格式的字符串

就直接拼接吧。

如果不是固定格式的字符串

怎么办呢?基本原理: 

可以看出将对象转换成字符串并不复杂,不过上面只是介绍原理,有很多没完善,比如没有考虑属性的数据类型,字符串属性值应该加上引号,还有有更复杂的数组、对象等。

网上有代码解决这个问题:https://github.com/douglascrockford/JSON-js

<<返回首页<<