看了就知道什么是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 相关文章推荐
javascript 多级checkbox选择效果
Aug 20 Javascript
Jquery 表单验证类介绍与实例
Jun 09 Javascript
浅谈javascript属性onresize
Apr 20 Javascript
13个PHP函数超实用
Oct 21 Javascript
AngularJS 中的指令实践开发指南(一)
Mar 20 Javascript
纯JS实现轮播图
Feb 22 Javascript
ionic实现底部分享功能
May 11 Javascript
JavaScript使用FileReader实现图片上传预览效果
Mar 27 Javascript
Three.js实现绘制字体模型示例代码
Sep 26 Javascript
js中的数组对象排序分析
Dec 11 Javascript
JavaScript实现轮播图片完整代码
Mar 07 Javascript
Vue基于iview table展示图片实现点击放大
Aug 05 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高手?学会“懒惰”的编程
2006/12/05 PHP
mysql_fetch_assoc和mysql_fetch_row的功能加起来就是mysql_fetch_array
2007/01/15 PHP
Windows IIS PHP 5.2 安装与配置方法
2009/06/08 PHP
PHP中date与gmdate的区别及默认时区设置
2014/05/12 PHP
C# WinForm中实现快捷键自定义设置实例
2015/01/23 PHP
微信公众号模板消息群发php代码示例
2016/12/29 PHP
php 的多进程操作实践案例分析
2020/02/28 PHP
jquery 图片截取工具jquery.imagecropper.js
2010/04/09 Javascript
离开页面时检测表单元素是否被修改,提示保存的js代码
2010/08/25 Javascript
javascript 事件处理程序介绍
2012/06/27 Javascript
js 实现菜单上下显示附效果图
2013/11/21 Javascript
以JSON形式将JS中Array对象数组传至后台的方法
2014/01/06 Javascript
jquery datepicker参数介绍和示例
2014/04/15 Javascript
浅谈JS日期(Date)处理函数
2014/12/07 Javascript
javaScript中的原型解析【推荐】
2016/05/05 Javascript
jQuery对象的链式操作用法分析
2016/05/10 Javascript
浅谈javascript中的三种弹窗
2016/10/21 Javascript
jQuery实现轮播图及其原理详解
2020/04/12 jQuery
Three.JS实现三维场景
2018/12/30 Javascript
vue中的双向数据绑定原理与常见操作技巧详解
2020/03/16 Javascript
python基于phantomjs实现导入图片
2016/05/13 Python
python中reduce()函数的使用方法示例
2017/09/29 Python
python3 pygame实现接小球游戏
2019/05/14 Python
python标准库sys和OS的函数使用方法与实例详解
2020/02/12 Python
html5实现完美兼容各大浏览器的播放器
2014/12/26 HTML / CSS
台湾饭店和机票预订网站:Expedia台湾
2016/08/05 全球购物
Infababy英国:婴儿推车、Travel System婴儿车和婴儿汽车座椅销售
2018/05/23 全球购物
Tirendo比利时:在线购买轮胎
2018/10/22 全球购物
记帐员岗位责任制
2014/02/08 职场文书
高级销售求职信
2014/02/21 职场文书
2015元旦家电促销活动策划方案
2014/12/09 职场文书
小学优秀教师事迹材料
2014/12/16 职场文书
结婚保证书
2015/01/16 职场文书
党员干部学习十八届五中全会精神心得体会
2016/01/05 职场文书
一封真诚的自荐信帮你赢得机会
2019/05/07 职场文书
创业计划书之溜冰场
2019/10/25 职场文书