看了就知道什么是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 相关文章推荐
mouse_on_title.js
Aug 25 Javascript
javascript 实用的文字链提示框效果
Jun 30 Javascript
asp.net下使用jquery 的ajax+WebService+json 实现无刷新取后台值的实现代码
Sep 19 Javascript
AngularJS入门教程之Hello World!
Dec 06 Javascript
JavaScript实现添加及删除事件的方法小结
Aug 04 Javascript
JS构造函数与原型prototype的区别介绍
Jul 04 Javascript
用瀑布流的方式在网页上插入图片的简单实现方法
Sep 23 Javascript
微信小程序实现顶部选项卡(swiper)
Jun 19 Javascript
教你用Cordova打包Vue项目的方法
Oct 17 Javascript
jquery如何实现点击空白处隐藏元素
Dec 05 jQuery
vue+element树组件 实现树懒加载的过程详解
Oct 21 Javascript
微信小程序 wx:for 与 wx:for-items 与 wx:key的正确用法
May 19 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 进度条实现代码
2009/03/10 PHP
一个图片地址分解程序(用于PHP小偷程序)
2014/08/23 PHP
PHP+AJAX实现投票功能的方法
2015/09/28 PHP
JS判断数组中是否有重复值得三种实用方法
2013/08/16 Javascript
js和jquery使按钮失效为不可用状态的方法
2014/01/26 Javascript
jQuery中attr()和prop()在修改checked属性时的区别
2014/07/18 Javascript
javascript制作坦克大战全纪录(1)
2014/11/27 Javascript
JavaScript自定义数组排序方法
2015/02/12 Javascript
超精准的javascript验证身份证号的具体实现方法
2015/11/18 Javascript
jQuery异步提交表单的两种方式
2016/09/13 Javascript
JavaScript编写的网页小游戏,很给力
2017/08/18 Javascript
nodejs基于mssql模块连接sqlserver数据库的简单封装操作示例
2018/01/05 NodeJs
微信小程序实现滚动消息通知
2018/02/02 Javascript
vue.js实现带日期星期的数字时钟功能示例
2018/08/28 Javascript
Angular 实现输入框中显示文章标签的实例代码
2018/11/07 Javascript
基于react项目打包css引用路径错误解决方案
2020/10/28 Javascript
Python Trie树实现字典排序
2014/03/28 Python
Python程序设计入门(3)数组的使用
2014/06/16 Python
Python逐行读取文件中内容的简单方法
2019/02/26 Python
总结Python图形用户界面和游戏开发知识点
2019/05/22 Python
Python基于爬虫实现全网搜索并下载音乐
2021/02/14 Python
纪伊国屋新加坡网上书店:Kinokuniya新加坡
2017/12/29 全球购物
美国购买肉、鸭、家禽、鹅肝和熟食网站:D’Artagnan
2018/11/13 全球购物
日本最佳原创设计品牌:Felissimo(芬理希梦)
2019/03/19 全球购物
东南亚排名第一的服务市场:kaodim
2019/03/28 全球购物
国际花店:Pickup Flowers
2020/04/10 全球购物
毕业生个人的自我评价优秀范文
2013/10/03 职场文书
优秀员工自荐信范文
2013/10/05 职场文书
煤矿班组长的职责
2013/12/25 职场文书
大学学习生活感言
2014/01/18 职场文书
秋天的图画教学反思
2014/05/01 职场文书
运动会加油稿20字
2014/11/15 职场文书
2015年度班主任自我评价
2015/03/11 职场文书
2016年教师节感恩寄语
2015/12/04 职场文书
浅谈PHP7中的一些小技巧
2021/05/29 PHP
webpack的移动端适配方案小结
2021/07/25 Javascript