XML和JSON

早期Web发展和负载的数据量并不是很大,所以基本靠HTML(1989诞生)可以解决。但是随着Web应用的不断壮大,HTML的一些缺点也慢慢显现,如:可读性差、解析时间长、数据描述性差等。
1998年2月10日,W3C(World WideⅥiebConsortium,万维网联盟)公布XML 1.0标准,XML诞生了。XML使用一个简单而又灵活的标准格式,为基于Web的应用提供了一个描述数据和交换数据的有效手段。但是,XML并非是用来取代HTML的。HTML着重如何描述将文件显示在浏览器中,它着重描述如何将数据以结构化方式表示。XML简单易于在任何应用程序中读/写数据,这使XML很快成为数据交换的唯一公共语言,所以XML被广泛应用。
2001 年 4 月,首个 JSON 格式的消息被发送出来。此消息是从旧金山湾区某车库的一台计算机发出的,这是计算机历史上重要的的时刻。道格拉斯·克罗克福特(Douglas Crockford) 和 奇普·莫宁斯达(Chip Morningstar) 是一家名为 State Software 的技术咨询公司的联合创始人(后来都在雅虎任职),他们当时聚集在 Morningstar 的车库里测试某个想法,发出了此消息
最初的 JSON 信息实际上与 JavaScript 解释器发生了冲突。JavaScript 保留了大量的关键字(ECMAScript 6 版本就有 64 个保留字),Crockford 和 Morningstar 无意中在其 JSON 中使用了一个保留字:do。因为 JavaScript 使用的保留字太多了,所以Crockford决定:既然不可避免的要使用到这些保留字,那就要求所有的 JSON 键名都加上引号。被引起来的键名会被 JavaScript 解释器识别成字符串。这就为什么今天 JSON 键名都要用引号引起来的原因。
随着AJax(之前叫XMLHTTP,2005年后才叫Ajax)技术的流行,XML的弊端也越来越显现:大家都知道XML实现是基于DOM树实现的,而DOM在各种浏览器中的实现细节不尽相同,所以XML的跨浏览器兼容性并不好,所以急需一种新的数据负载格式集成到HTML页面中以满足Ajax的要求!所以就有人想创造一种浏览器通用组件:JavaScript引擎 能识别的数据格式,这样就可以解决浏览器不兼容问题。这种数据格式既然可以被JavaScript引擎识别,那就解决了XML带来的各种浏览器兼容性问题,所以这种技术完全可以推广出去,于是Crockford 和 Morningstar 想给其命名为 “JSML”,表示JavaScript 标记语言(JavaScript Markup Language)的意思,但发现这个缩写已经被一个名为 Java Speech 标记语言的东西所使用了。所以他们决定采用 “JavaScript Object Notation”,缩写为 JSON,至此JSON正式诞生。

原文地址:https://www.cnblogs.com/doit8791/p/11955611.html