JSON数据格式,JSON格式化介绍,JSON格式介绍。

soゝso 2016-08-22 18:35:45 4873

1.基本介绍

首先有同学问我们在Javascript里操作的“JSON.stringify ”与 “JSON.parse ”是Javascript自带的吗?

JSON.stringify();
JSON.parse();
首先:
JSON对象是javascript自带的,不过对于不同浏览器,支持不同。

支持列表

  • IE8+
  • chrome
  • firefox
  • safari
    ...

不支持列表

  • ie7,ie6, ie6-

在现在浏览器,IE8+,chrome,firefox,safair等支持,但是在ie6,ie7是不支持的,如果用这JSON 对象,并且要求低版本的浏览器支持,你可以使用json2来支持。

附带:JSON2


早期的JSON解析器基本上就是使用JavaScript的eval()函数。由于JSON是JavaScript语法的自己,因此eval()函数可以解析、解释并返回JavaScript的对象和数组。
ECMAScript 5对解析JSON的行为进行了规范,定义了全局对象JSON。

据网上资料,浏览器对JSON的支持情况 : IE8 chrome1+ safari3+ firefox3+

2.JSON用法

对象以"{"(左括号)开始,"}"(右括号)结束。每个"名称"后跟一个":"(冒号);"'名称/值’'对"之间运用 “,”(逗号)分隔。 名称用引号括起来;值如果是字符串则必须用括号,数值型则不须要。

例如:

{
    "站长": "soso,QQ:8446666",
    "域名": "https://www.sojson.com",
    "开发语言": "最牛逼的语言——Java ^_^",
    "编码": "UTF-8"
}

 数组是值(value)的有序集合。一个数组以”[”(左中括号)开始,"]"(右中括号)结束。值之间运用 ","(逗号)分隔。

例如:

{
    "技术使用": [
        "SpringMVC",
        "Mybatis ",
        "Freemarker",
        "Shiro"
    ],
    "数据存储": [
        "Redis",
        "RDS",
        "七牛云存储"
    ]
}

数据传输流程中,json是以文本,即字符串的形式传递的,而JS操作的是JSON对象,所以,JSON对象和JSON字符串之间的相互转换是关键。

JSON字符串:

var data='{"name":"sojson","url":"www.sojson.com"}';//外面是用单引号“'”引用。
var data="
{\"name\":\"sojson\",\"url\":\"www.sojson.com\"}";//外面用双引号就要用反斜杠 ‘\’。

JSON对象: 

var data={"name":"sojson","url":"www.sojson.com"};

注意:如果obj本来就是一个JSON对象,那么运用 eval()函数转换后(哪怕是多次转换)还是JSON对象,但是运用 parseJSON()函数处理后会有疑问(抛出语法异常)。

个人推荐最好不要用eval(),因为如果可以运算的字符串,结果就会和应该的到的不一致,比如字符串里有含有"1+2",本来就是个字符串,但是结果是以"3"的方式输出的。

可以运用 toJSONString()或者全局的JSON.stringify()函数将JSON对象转化为JSON字符串

代码如下:

//将JSON对象转化为JSON字符
var jsonstr = data.toJSONString();

//或者这样

//将JSON对象转化为JSON字符 var jsonstr = JSON.stringify(data);

总结一下:

  1. 在数据传输流程中,json是以文本,即字符串的形式传递的,和其他的传输类型没有任何差别。都是以字符串文本传输。
  2. Json.stringify()将JSON对象转为JSON字符串(也称之为序列化);
  3. Json.parse()将JSON字符串转为JSON对象(也称之为反序列化);

版权所属:SO JSON在线解析

原文地址:https://www.sojson.com/blog/24.html

转载时必须以链接形式注明原始出处及本声明。

本文主题:

如果本文对你有帮助,那么请你赞助我,让我更有激情的写下去,帮助更多的人。

相关文章
JSON是什么?它能带来什么?它和XML比较?
SOJSON.COM 站点介绍
JSON格式讲解,JSON获取对象,JSONObject和JSONArray的操作
Java 解析JSON,JSON-LIB jar包下载和使用。
GZIP压缩JSON,JSON压缩
SQL Server 对JSON的支持
JSON压缩算法 JSON.hpack ,JSON压缩实现
JSON.stringify 函数 (JavaScript)讲解
json 解析与生成工具类 ,JSON操作讲解(附件)
MySql数据库优化注意的四个细节(方法)
最新文章
Javascript 加密/压缩后运行不了,JavaScript报错排查讲解 22
JavaScript 不可逆加密问题排查之方案一(闭包优化) 22
Java爬虫,Jsoup 爬取大众点评、美团商家信息电话号码解决方案 152
分解质因数 JavaScript 计算方式,及分解质因数讲解 4
湖南腾众4s店服务怎么样?进来看看你就知道了 27
SEO 之 SpringMVC redirect 301,301和302区别详细讲解 69
网站如何设置404页面、500等错误页面,有什么漏洞?怎么预防? 87
Java 文字转图片输出,Java 输出透明背景图片,Java文字转图片防爬虫 143
HttpClient获取访问域名的真实ip,HttpClient请求获取目标IP地址 258
又拍云24小时日志下载方法,日志合并,.gz 压缩包多个合并方法 42
最热文章
免费天气API,全国天气 JSON API接口,可以获取五天的天气预报 174625
Elasticsearch教程(四) elasticsearch head 插件安装和使用 137987
我为什么要选择RabbitMQ ,RabbitMQ简介,各种MQ选型对比 116249
Elasticsearch教程(六) elasticsearch Client创建 81935
Elasticsearch教程(二),IK分词器安装 76990
Elasticsearch教程(一),全程直播(小白级别) 76877
Elasticsearch教程(八) elasticsearch delete 删除数据(Java) 76667
苹果电脑Mac怎么恢复出厂系统?苹果系统怎么重装系统? 74060
Elasticsearch教程(五) elasticsearch Mapping的创建 69248
Elasticsearch教程(三),IK分词器安装 (极速版) 58117

骚码加入我们 / 千人QQ群:259217951

入群需要5元,如果没有QQ钱包,可以先Alipay、微信,赞助然后加群主拉进。

二维码生成 来自 >> 二维码生成器

支付扫码

所有赞助/开支都讲公开明细,用于网站维护:赞助名单查看

正在加载... ...