zoukankan      html  css  js  c++  java
  • 转载Json和Xml的区别,以及它们的底层是如何处理的

    XML:可扩展标记语言       JSON:轻量级的数据交换格式

    区别:

      1.可读性方面:基本相同,Xml的可读性较好些;

      2.可扩展性方面:都有较好的扩展性;

      3.编码难度方面:json的编码较容易些;

      4.解码难度:json的解码难度基本为0,xml需要考虑子节点和父节点;

      5.数据体积方面:json相对于xml来讲,数据体积小,传递的速度会快些;

      6.数据交互方面:json与JavaScript的交互更加方便,更容易解析处理,交互也会更好;

      7.数据描述方面:xml对数据描述性较好;

      8.传输速度方面:json的速度远远大于xml。

    底层原理:

    JSON底层原理:

    遍历字符串中的字符,最终根据格式规定的特殊字符,比如{},[],:,等进行区分。{}是一个字典的开始,[]是一个数组的开始,:是字典的键和值的分水岭,最终结果是讲json数据转化为字典,字典中的值可能是字典,数组,字符串。

    XML底层原理:

    xml解析常用的解析方法有两种:DOM和SAX解析。

    DOM解析采用建立树形结构的方式访问xml文档,而SAX采用事件模型。DOM解析把xml文档转化成为一个包含其内容的树,并可以对树进行遍历。使用DOM解析时需要处理整个xml文档,所以对性能和内存的要求比较高。SAX解析xml文档时可以触发一系列的事件,当发现给定的tag的时候,它可以激活一个回调方法,告诉该方法制定的标签已经找到。SAX对内存要求较低,因为它让开发人员自己决定所要处理的tag。

  • 相关阅读:
    设计模式笔记(22)状态模式(行为型)
    设计模式笔记(16)解释器模式(行为型)
    Lable和Literal控件的使用和区别
    设计模式笔记(15)命令模式(行为型)
    设计模式笔记(25)总结
    在JS方法中返回多个值的三种方法
    SQL 左外连接,右外连接,全连接,内连接
    面试集萃
    ASP.NET MVC如何使用Ajax的辅助方法
    ASP.NET MVC+EF框架+EasyUI实现权限管理(附源码)
  • 原文地址:https://www.cnblogs.com/mike-mei/p/8032540.html
Copyright © 2011-2022 走看看