看了就知道什么是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 相关文章推荐
表单(FORM)的一些实用效果代码
Mar 25 Javascript
Javascript之this关键字深入解析
Nov 12 Javascript
浅谈JS闭包中的循环绑定处理程序
Nov 09 Javascript
jQuery仿写百度百科的目录树
Jan 03 Javascript
Javascript for in的缺陷总结
Feb 03 Javascript
jquery Easyui Datagrid实现批量操作(编辑,删除,添加)
Feb 20 Javascript
Ajax验证用户名或昵称是否已被注册
Apr 05 Javascript
Vue数据双向绑定原理及简单实现方法
May 18 Javascript
vue和webpack安装命令详解
Jun 15 Javascript
vue+elementui实现点击table中的单元格触发事件--弹框
Jul 18 Javascript
详解JavaScript中的数据类型,以及检测数据类型的方法
Sep 17 Javascript
vue+Element-ui前端实现分页效果
Nov 15 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
怎么使 Mysql 数据同步
2006/10/09 PHP
PHP获取windows登录用户名的方法
2014/06/24 PHP
php操作memcache缓存方法分享
2015/06/03 PHP
PHP中Session可能会引起并发问题
2015/06/26 PHP
PHP实现163邮箱自动发送邮件
2016/03/29 PHP
PHP实现的AES加密、解密封装类与用法示例
2018/08/02 PHP
事件模型在各浏览器中存在差异
2010/10/20 Javascript
使用insertAfter()方法在现有元素后添加一个新元素
2014/05/28 Javascript
js获取当前页面的url网址信息
2014/06/12 Javascript
第二章之Bootstrap 页面排版样式
2016/04/25 Javascript
JS原型链怎么理解
2016/06/27 Javascript
webpack学习笔记之代码分割和按需加载的实例详解
2017/07/20 Javascript
JS常见DOM节点操作示例【创建 ,插入,删除,复制,查找】
2018/05/14 Javascript
js判断在哪个浏览器打开项目的方法
2020/01/21 Javascript
微信小程序实现比较功能的方法汇总(五种方法)
2020/03/07 Javascript
JS addEventListener()和attachEvent()方法实现注册事件
2021/01/11 Javascript
wxpython 学习笔记 第一天
2009/03/16 Python
Python实现的数据结构与算法之队列详解
2015/04/22 Python
详解Python 模拟实现生产者消费者模式的实例
2017/08/10 Python
Python断言assert的用法代码解析
2018/02/03 Python
Python符号计算之实现函数极限的方法
2019/07/15 Python
Python实现二叉树的最小深度的两种方法
2019/09/30 Python
Pytorch上下采样函数--interpolate用法
2020/07/07 Python
html5实现canvas阴影效果示例
2014/05/07 HTML / CSS
Yankee Candle官网:美国最畅销蜡烛品牌之一
2020/01/05 全球购物
Python是如何进行类型转换的
2013/06/09 面试题
会计岗位职责
2013/11/08 职场文书
销售冠军获奖感言
2014/02/03 职场文书
2014村务公开实施方案
2014/02/25 职场文书
环保建议书300字
2014/05/14 职场文书
投标服务承诺书
2014/05/28 职场文书
关于安全的广播稿
2014/10/23 职场文书
2016年七夕情人节宣传语
2015/11/25 职场文书
2016年度先进班组事迹材料
2016/03/01 职场文书
导游词之山东八大关
2019/12/18 职场文书
JS高级程序设计之class继承重点详解
2022/07/07 Javascript