区别:
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。
时间: 2024-10-12 04:20:50