首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Json解析与xml解析?

Json解析与xml解析?
EN

Stack Overflow用户
提问于 2012-08-22 14:58:06
回答 2查看 14.7K关注 0票数 6

json解析的优点和缺点是什么?为什么开发人员更喜欢使用json而不是xml解析?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-08-22 15:10:24

杰森。

与XML -XML的结束标记相比,它的开销更小,将样板代码的大小增加了大约2倍。

代码语言:javascript
复制
{
  "key": "value",
  "other key": 3.1415926535897932,
  "arr": [
    1,
    2,
    3
  ]
}

对比

代码语言:javascript
复制
<?xml version="1.0"?>
<!-- not to mention the DTD declaration -->
<myXmlFormat>
  <key>value</key>
  <otherKey>3.1415926535897932</otherKey>
  <arr>
    <number>1</number>
    <number>2</number>
    <number>3</number>
  </arr>
</myXmlFormat>

更容易、更快地解析(因为它更轻量级)--有很多JSON解析器本身比相同编程语言中的XML解析器更小、更快(考虑一下libxml2和js0n)。

JSON的数据类型也与传统上被认为是“原始”的数据类型有1:1的映射关系--比如字符串、整数和实数、数组和键值表格。此外,这些原始数据类型很容易与Foundation aa一起使用,它们是内置在其中的-上面的JSON可以毫不费力地解析为包含“键”、“其他键”和"arr“作为键的NSDictionary,它们分别对应于字符串”NSNumber“、pi和NSArray。同时,还必须考虑XML --也许您甚至必须创建自定义类来表示您自己用XML描述的数据结构。

NSXMLParser是专门针对iOS平台的:可可的原生XML解析器,使用起来非常不直观。iOS上的基础框架不包括Mac上的基础中的XML类,这迫使开发人员编写自己的意大利面状代码,将所有NSXMLNode包装成一些结构化数据……好吧..。结构,而不是能够使用包含的结构。

票数 10
EN

Stack Overflow用户

发布于 2012-08-22 15:29:02

XML

优势

  • XML最重要的优点是它是其他人最容易阅读的格式。

  • 第二个优点是XML已经存在很长一段时间了,许多开发人员已经习惯了。

缺点

  • 将数据插入到超文本标记语言页面中所需的JavaScript相当冗长。

JSON

优势

JSON

  • 最重要的优点是,如果您将JSON文件作为新标记导入,那么它将绕过的同源策略。请参阅Simon Willison的示例以了解更详细的信息。JavaScript不允许您访问来自其他服务器的文档(无论是XML还是HTML)。但是,如果将JSON文件作为脚本标记导入,则可以绕过此问题,并且任何JSON数据都可以导入到任何网站中。这取决于您的业务目标,这是好事还是坏事,但目前它是唯一允许无限制访问的数据格式。

JSON

  • 的第二个优点是,与数据的脚本相比,JSON数据的脚本稍微简单一些,并且更符合JavaScript语言的其余部分。

缺点

  • JSON最大的缺点是它的格式对于人类来说很难读懂,当然,每个逗号、引号和括号都应该放在正确的位置。虽然XML也是如此,但JSON混乱的复杂语法,如数据片段末尾的}}]},可能会吓到新手,并有助于进行复杂的调试。

从评论中可以看出,JSON的处理速度比XML更快。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12067794

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档