JSON(JavaScriptObjectNotation)是一种轻量级的数据交换格局。它根据JavaScript的一个子集。JSON采用彻底独立于语言的文本格局,可是也运用了类似于C语言家族的习惯(包括C,C++,C#,Java,JavaScript,Perl,Python等)。这些特性使JSON成为抱负的数据交换语言。JSON易于人阅读和编写,一起也易于机器解析和生成。

json

一、JSON和XML的比较
1、可读性
JSON和XML的可读性可谓平起平坐,一边是简易的语法,一边是规范的标签形式,很难分出胜负。
2、可扩展性
XML天生有很好的扩展性,JSON当然也有,不过JSON在Javascript主场作战,能够存储Javascript复合目标,有着xml不行比拟的优势。
3、编码难度
XML有丰富的编码东西,比方Dom4j、JDom等,JSON也有提供的东西。无东西的情况下,相信熟练的开发人员一样能很快的写出想要的xml文档和JSON字符串,不过,xml文档要多很多结构上的字符。
4、解码难度
XML的解析办法有两种:
一是经过文档模型解析,也便是经过父标签索引出一组标记。例如:xmlData.getElementsByTagName(“tagName”),可是这样是要在预先知道文档结构的情况下运用,无法进行通用的封装。别的一种办法是遍历节点(document以及childNodes)。这个能够经过递归来实现,不过解析出来的数据仍旧是形式各异,往往也不能满意预先的要求。
但凡这样可扩展的结构数据解析起来必定都很困难。
JSON也同样如此。假如预先知道JSON结构的情况下,运用JSON进行数据传递简直是太美妙了,能够写出很实用漂亮可读性强的代码。假如你是纯粹的前台开发人员,必定会非常喜欢JSON。可是假如你是一个运用开发人员,就不是那么喜欢了,毕竟xml才是真正的结构化标记语言,用于进行数据传递。而假如不知道JSON的结构而去解析JSON的话,那简直是噩梦。费时费力不说,代码也会变得冗余拖沓,得到的结果也不尽人意。可是这样也不影响众多前台开发人员挑选JSON。因为json.js中的toJSONString()就能够看到JSON的字符串结构。当然不是运用这个字符串,这样仍旧是噩梦。常用JSON的人看到这个字符串之后,就对JSON的结构很明了了,就更容易的操作JSON。
以上是在Javascript中仅关于数据传递的xml与JSON的解析。在Javascript地盘内,JSON毕竟是主场作战,其优势当然要远远优越于xml。假如JSON中存储Javascript复合目标,并且不知道其结构的话,我相信很多程序员也一样是哭着解析JSON的。
5、有用数据率
除了上述之外,JSON和XML还有别的一个很大的差异在于有用数据率。JSON作为数据包格局传输的时候具有更高的功率,这是因为JSON不像XML那样需求有严厉的闭合标签,这就让有用数据量与总数据包比大大提升,然后削减同等数据流量的情况下,网络的传输压力。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。