javscript-json和xml简单了解

本文详细对比了JSON与XML这两种常用的数据交换格式。介绍了它们的基本概念、格式特点、优缺点及应用场景,并提供了JSON的常见操作方法。

1.什么是json?什么是xml?

1.1json是:
JSON(JavaScript Object Notation)一种轻量级的数据交换格式,具有良好的可读和便于快速编写的特性.
1.1xml是:
扩展标记语言 (Extensible Markup Language, XML)是一种标记语言,很类似HTML结构被设计为具有自我描述性的语言;

2.json和xml的优缺点?

2.1xml和json的相同之处
xml和json都是具有数据描述特性的语言

2.2json的优点和缺点
特点:
json是纯文本,具有自我描述性(可读性强),具有层级结构(健值对),可通过javascript进行解析,数据可以使用ajax进行传输
优点:
更小(json轻量级文件数据交互),更快,易于解析,支持多种语言

2.2xml的优点和缺点
优点:
格式统一,符合标准;容易与其他系统进行远程交互,数据共享比较方便。
缺点:
XML文件庞大,文件格式复杂,传输占带宽;服务器端和客户端都需要花费大量代码来解析XML,导致服务器端和客户端代码变得异常复杂且不易维护;客户端不同浏览器之间解析XML的方式不一致,需要重复编写很多代码;服务器端和客户端解析XML花费较多的资源和时间。

3.json的格式?xml的格式?

3.1json格式:

['one', 'two', 'three']//数组

{ 'one': 1, 'two': 2, 'three': 3 }//对象,键值对

{'names': ['张三', '李四'] }//对象,键值对

[ { 'name': '张三'}, {'name': '李四'} ]//数组对象

3.2不合法的json

{ name: '张三', 'age': 32 }  // 属性名必须使用双引号

[32, 64, 128, 0xFFF] // 不能使用十六进制值

{ 'name': '张三', 'age': undefined } // 不能使用undefined

{ 'name': '张三',
  'birthday': new Date('Fri, 26 Aug 2011 07:13:10 GMT'),
  'getName': function() {
      return this.name;
  }
} // 不能使用函数和日期对象

3.1xml写法:

<?xml version='1.0' encoding='utf-8' ?>
<country>
 <name>中国</name>
 <province>
  <name>黑龙江</name>
  <citys>
   <city>哈尔滨</city>
   <city>大庆</city>
  </citys>   
 </province>
 <province>
  <name>广东</name>
  <citys>
   <city>广州</city>
   <city>深圳</city>
   <city>珠海</city>
  </citys>   
 </province>
 <province>
  <name>台湾</name>
  <citys>
    <city>台北</city>
    <city>高雄</city>
  </citys> 
 </province>
 <province>
  <name>新疆</name>
  <citys>
   <city>乌鲁木齐</city>
  </citys>
 </province>
</country>

4.json的常用方法?xml的常用方法?

4.1json
1.JSON.stringify() 将一个值转为字符串,该字符串是属于json格式的
2.JSON.parse() 将JSON字符串转化成对象
3.eval()将字符串转json 对象,存在安全问题

5.jquery中json方法

5.1字符串转json

var jsonObject= jQuery.parseJSON(jsonstr);  

参考文章:http://www.cnblogs.com/SanMaoSpace/p/3139186.html
参考博文:http://www.ruanyifeng.com/blog/2009/05/data_types_and_json.html
参考博文:http://javascript.ruanyifeng.com/stdlib/json.html
递归博文:http://blog.youkuaiyun.com/xujie3/article/details/52954940
转换博文:http://blog.youkuaiyun.com/liuweiyuxiang/article/details/49913197
在线JSON代码检验、检验、美化、格式化工具:
http://tools.jb51.net/code/json
在线XML/JSON互相转换:
http://tools.jb51.net/code/xmljson
json代码在线格式化/美化/压缩/编辑/转换工具:
http://tools.jb51.net/code/jsoncodeformat
C语言风格/HTML/CSS/json代码格式化美化工具:
http://tools.jb51.net/code/ccode_html_css_json

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值