看了就知道什么是JSON


Posted in Javascript onDecember 09, 2007

什么是JSON 
JSON(Javascript Object Notation) 是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。它基于Javascript Programming Language, Standard ECMA-262 3rd Edition - December 1999的一个子集。JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C++, C#, Java, Javascript, Perl, Python等)。这些特性使JSON成为理想的数据交换语言。 
JSON概念很简单,就是服务器直接生成Javascript语句,客户端获取后直接用eval方法来获得这个对象,这样就可以省去解析XML的性损失。

使用XML表示:   

<items>    
    <item>    
        <id>1</id>    
        <author>Jackson</author>    
        <url>https://3water.com</url>    
        <content>Welcome to Web.cn</content>    
    </item>    
    <item>    
        <id>2</id>    
        <author>Relkn</author>    
        <url>https://3water.com</url>    
        <content>Web.cn关注互联网新技术</content>    
    </item>    
    <item>    
        <id>3</id>    
        <author>Kvogend</author>    
        <url>https://3water.com</url>    
    <content>3water.com三水点靠木</content>    
    </item>    
</items>
    
代码:
<items>  
    <item>  
        <id>1</id>  
        <author>Jackson</author>  
        <url>https://3water.com</url>  
        <content>Welcome to Web.cn</content>  
    </item>  
    <item>  
        <id>2</id>  
        <author>Relkn</author>  
        <url>https://3water.com</url>  
        <content>Web.cn关注互联网新技术</content>  
    </item>  
    <item>  
        <id>3</id>  
        <author>Kvogend</author>  
        <url>https://3water.com</url>  
    <content>3water.com三水点靠木</content>  
    </item>  
</items>  

使用JSON:   
{items:[     
{     
id:1,     
author:\"Jackson\",    
url:\"https://3water.com\",    
content:\"Welcome to Web.cn\"    
},    
{    
id:2,    
author:\"Relkn\",    
url:\"https://3water.com\",    
content:\"Web.cn关注互联网新技术\"    
},    
{    
id:3,    
author:\"Kvogend\",    
url:\"https://3water.com\",    
content:\"3water.com三水点靠木\"    
}     
]};    

代码:  
{items:[  
{  
id:1,  
author:\"Jackson\",  
url:\"https://3water.com\",  
content:\"Welcome to Web.cn\"  
},  
{  
id:2,  
author:\"Relkn\",  
url:\"https://3water.com\",  
content:\"Web.cn关注互联网新技术\"  
},  
{  
id:3,  
author:\"Kvogend\",  
url:\"https://3water.com\",  
content:\"3water.com三水点靠木\"  
}  
]};  

JSON不仅减少了解析XML解析带来的性能问题和兼容性问题,而且对于Javascript来说非常容易使用,可以方便的通过遍历数组以及访问对象属性来获取数据,其可读性也不错,基本具备了结构化数据的性质。不得不说是一个很好的办法,而且事实上google maps就没有采用XML传递数据,而是采用了JSON方案。

JSON的另外一个优势是"跨域性",例如你在3water.com的网页里使用

<script type="text/javascript" src="" target="_blank">http://www.yyy.com/some.js">

是完全可行的,这就意味着你可以跨域传递信息。而使用XMLHttpRequest却获取不了跨域的信息,这是Javascript内部的安全性质所限制的。

JSON能完全取代XML吗?当然不能,原因就在于XML的优势:通用性。要使服务器端产生语法合格的Javascript代码并不是很容易做到的,这主要发生在比较庞大的系统,服务器端和客户端有不同的开发人员。它们必须协商对象的格式,这很容易造成错误。

Javascript 相关文章推荐
ext读取两种结构的xml的代码
Nov 05 Javascript
javascript重复绑定事件造成的后果说明
Mar 02 Javascript
js前台分页显示后端JAVA数据响应
Mar 18 Javascript
js阻止默认事件与js阻止事件冒泡示例分享 js阻止冒泡事件
Jan 27 Javascript
jQuery实现ichat在线客服插件
Dec 29 Javascript
JSON格式的键盘编码对照表
Jan 29 Javascript
js基于cookie记录来宾姓名的方法
Jul 19 Javascript
JavaScript中双符号的运算详解
Mar 12 Javascript
JavaScript格式化json和xml的方法示例
Jan 22 Javascript
JavaScript遍历数组的三种方法map、forEach与filter实例详解
Feb 27 Javascript
tsconfig.json配置详解
May 17 Javascript
OpenLayer学习之自定义测量控件
Sep 28 Javascript
javascript while语句和do while语句的区别分析
Dec 08 #Javascript
js中将多个语句写成一个语句的两种方法小结
Dec 08 #Javascript
JavaScript开发时的五个注意事项
Dec 08 #Javascript
JS的递增/递减运算符和带操作的赋值运算符的等价式
Dec 08 #Javascript
javascript数组使用调用方法汇总
Dec 08 #Javascript
不间断滚动JS打包类,基本可以实现所有的滚动效果,太强了
Dec 08 #Javascript
项目实践之javascript技巧
Dec 06 #Javascript
You might like
php实现文件下载代码分享
2014/08/19 PHP
PHP查询快递信息的方法
2015/03/07 PHP
php注册和登录界面的实现案例(推荐)
2016/10/24 PHP
bgsound 背景音乐 的一些常用方法及特殊用法小结
2010/05/11 Javascript
自己写了一个展开和收起的多更能型的js效果
2013/03/05 Javascript
捕获键盘事件(且兼容各浏览器)
2013/07/03 Javascript
在js文件中如何获取basePath处理js路径问题
2013/07/10 Javascript
JS测试显示屏分辨率以及屏幕尺寸的方法
2013/11/22 Javascript
AngularJS基础知识笔记之过滤器
2015/05/10 Javascript
JS+CSS实现带有碰撞缓冲效果的竖向导航条代码
2015/09/15 Javascript
javascript实现unicode与ASCII相互转换的方法
2015/12/10 Javascript
jQuery获取file控件中图片的宽高与大小
2016/08/04 Javascript
AngularJS表单提交实例详解
2017/02/18 Javascript
socket.io实现在线群聊功能
2017/04/07 Javascript
使用jQuery实现页面定时弹出广告效果
2017/08/24 jQuery
nodejs+mongodb aggregate级联查询操作示例
2018/03/17 NodeJs
详解es6超好用的语法糖Decorator
2018/08/01 Javascript
微信小程序调用摄像头隐藏式拍照功能
2018/08/22 Javascript
[02:03]风行者至宝清风环佩外观展示
2020/09/05 DOTA
[00:29]2019完美世界全国高校联赛(秋季赛)总决赛海口落幕
2019/12/10 DOTA
Pyramid添加Middleware的方法实例
2013/11/27 Python
python如何统计序列中元素
2020/07/31 Python
python随机取list中的元素方法
2018/04/08 Python
Python利用字典破解WIFI密码的方法
2019/02/27 Python
详解Python字典的操作
2019/03/04 Python
PyQt5实现简易电子词典
2019/06/25 Python
FFrpc python客户端lib使用解析
2019/08/24 Python
Python tempfile模块生成临时文件和临时目录
2020/09/30 Python
CSS3动画之利用requestAnimationFrame触发重新播放功能
2019/09/11 HTML / CSS
Perfume’s Club中文官网:西班牙美妆在线零售品牌
2020/08/24 全球购物
医学毕业生自我鉴定
2013/10/30 职场文书
简历中个人自我评价范文
2013/12/26 职场文书
办公室岗位职责
2014/02/12 职场文书
赵乐秦在党的群众路线教育实践活动总结大会上的讲话稿
2014/10/25 职场文书
《日月潭》教学反思
2016/02/20 职场文书
JavaScript流程控制(循环)
2021/12/06 Javascript