详细说明JSON 字符串进行交换数据简介
创始人
2024-06-19 10:50:29
0

由于 JSON 只是 JavaScript 文字的子集,因此可以使用将源JSON 字符串视为 JavaScript 源代码的 eval(expr) 函数,来分析内存中表示形式,。eval 函数接受输入有效 JavaScript 代码的字符串,并计算表达式结果。

因此,将 JSON 用作数据格式的大多数应用程序通常会使用字符串或数字来表示日期和时间值。如果使用的是字符串,您通常希望它是 ISO 8601 格式。如果使用的是数字,该值通常表示从JSON 字符串、以通用协调时间 (UTC) 表示的毫秒数,其中 epoch 定义为 1970 年 1 月 1 日午夜 (UTC)。同样,这仅仅是个惯例,而不是 JSON 标准的一部分。

如果您要与其他应用程序交换数据,则需要检查其文档,查看它对 JSON 文字内的日期和时间值是如何进行编码的。例如,Microsoft 的 ASP.NET AJAX 使用的就不是上述任一种惯例。它代之以将 .NET DateTime 值编码为 JSON 字符串,字符串内容是 \/Date(ticks)\/,其中 ticks 表示从 epoch (UTC) 开始的毫秒数。

ASP.NEXT 中的 AJAX JSON 序列化程序将 DateTime 实例编码为 JSON 字符串。在预发布周期中,ASP.NET AJAX 使用格式“@ticks@”,其中 ticks 表示从通用协调时间 (UTC) 1970 年 1 月 1 日起经过的毫秒数。以 UTC 表示的日期和时间。#t#

(如 1989 年 11 月 29 日 4:55:30 AM)会编码为“@62831853071@”。虽然简单易懂,但此格式无法区分序列化的日期和时间值与看起来像序列化日期但又不需要进行反序列化的值。因此,ASP.NET AJAX 团队对最终版本进行了更改,通过采用“\/Date(ticks)\/”格式解决了这一问题。

JSON 和 XML 均能够以基于文本、便于读者阅读的数据交换格式来表示本机内存中对象。此外,两种数据交换格式是同构的,只要文本是一种格式,即可得出另外一种格式的等效文本。例如,调用 可公开访问的 Yahoo! web 服务之一时,您可以通过 querystring 参数指明响应需要设置为 XML 还是 JSON 格式。

因此,决定数据交换格式时,不是简单的选此或彼作为银弹的问题,而是要看哪种格式具有成为特定应用程序的***选择的“特征”。

例如,JSON 字符串 起源于标记文档文本,而且有继续在该领域发扬光大的趋势(XHTML 就是很好的证明)。而 JSON 则起源于编程语言类型和结构,因此提供了更加自然和便于使用的交换结构化数据映射。除了这两个起点之外,下表可帮助您了解和比较 XML 与 JSON 的重要特征。

JSON 标准设置格式的数组。

相关内容

热门资讯

如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
施耐德电气数据中心整体解决方案... 近日,全球能效管理专家施耐德电气正式启动大型体验活动“能效中国行——2012卡车巡展”,作为该活动的...
Windows恶意软件20年“... 在Windows的早期年代,病毒游走于系统之间,偶尔删除文件(但被删除的文件几乎都是可恢复的),并弹...
20个非常棒的扁平设计免费资源 Apple设备的平面图标PSD免费平板UI 平板UI套件24平图标Freen平板UI套件PSD径向平...
德国电信门户网站可实时显示全球... 德国电信周三推出一个门户网站,直观地实时提供其安装在全球各地的传感器网络检测到的网络攻击状况。该网站...
着眼MAC地址,解救无法享受D... 在安装了DHCP服务器的局域网环境中,每一台工作站在上网之前,都要先从DHCP服务器那里享受到地址动...
为啥国人偏爱 Mybatis,... 关于 SQL 和 ORM 的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行...