加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

XML和JSON

发布时间:2020-12-16 02:15:29 所属栏目:百科 来源:网络整理
导读:以后这种总结性的文章,我都会先给出结论,然后罗列基础知识进一步解释结论。 conclusion:XML和JSON的区别 1) 数据体积方面。 JSON相对于XML来讲,数据的体积小,传递的速度更快些。 2)数据交互方面。 JSON与JavaScript的交互更加方便,更容易解析处理,

以后这种总结性的文章,我都会先给出结论,然后罗列基础知识进一步解释结论。

conclusion:XML和JSON的区别

1) 数据体积方面。
JSON相对于XML来讲,数据的体积小,传递的速度更快些。
2)数据交互方面。
JSON与JavaScript的交互更加方便,更容易解析处理,更好的数据交互。
3)数据描述方面。
JSON对数据的描述性比XML较差。
4)传输速度方面。
JSON的速度要远远快于XML。

详细解释

XML存储数据的弊端:

1)太多表示结构的标签造成字节浪费;
2)XML的解析需要额外代码,并且不同的XML文档需要的解析代码不同,越复杂的文档,解析代码也越复杂;把来自JS的数据序列化为XML数据更为复杂,而且不能出错;同时,串行化代码也是不可重用的。
Example:

<person>
    <firstName>John</firstName>
    <lastName>Doe</lastName>
    <age>30</age>
</person>

解析:

var personElement = document.querySelector("person");
var firstName = personElement.querySelector("firstName").innerHTML;
var lastName = personElement.querySelector("lastName").innerHTML;
var age = personElement.querySelector("age").innerHTML;
var person = {
    firstName : firstName,lastName: lastName,age: age
};

JSON

JSON只存储有用信息,没有标签,因此比XML体积小,这加快了传输速度;
JS数据的序列化和JSON解析很简单,主流浏览器支持JSON.stringify()和JSON.parse()方法。

Example:

<script type="text/javascript">
    var person = {
      firstName: "John",lastName: "Doe",age: 30
    };
    var json = JSON.stringify(person);//序列化
    alert(json);//{"firstName":"John","lastName":"Doe","age":30}
    var person=JSON.parse(json);//JSON解析
    alert(person.firstName);//John
  </script>

补充:

JSON一般用来表示三种数据:数组、对象、基本数据类型。
基本数据类型:null/false/true/number/string,和JS的区别在于string必须用双引号包围,其他三种数据类型和JS一样不用引号。
对象:

var person = {
    firstName: "John",age: 30
};
表示成JSON:
{
"firstName": "John","lastName": "Doe","age": 30
}

数组:

var values = ["John",30,false,null];

表示成JSON:

["John",null]

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读