JSON格式
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。它基于JavaScript(Standard ECMA-262 3rd Edition - December 1999)的一个子集。 JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C++, C#, Java, JavaScript, Perl, Python等)。这些特性使JSON成为理想的数据交换语言。易于人阅读和编写,同时也易于机器解析和生成。
JSON建构有两种结构:
1. “名称/值”对的集合(A collection of name/value pairs)。不同的语言中,它被理解为对象(object),记录(record),结构(struct),字典(dictionary),哈希表(hash table),有键列表(keyed list),或者关联数组 (associative array)。
2. 值的有序列表(An ordered list of values)。在大部分语言中,它被理解为数组(array)。
简单地说,JSON 可以将 JavaScript 对象中表示的一组数据转换为字符串,然后就可以在函数之间轻松地传递这个字符串,或者在异步应用程序中将字符串从 Web 客户机传递给服务器端程序。这个字符串看起来有点儿古怪,但是 JavaScript 很容易解释它,而且 JSON 可以表示比"名称 / 值对"更复杂的结构。例如,可以表示数组和复杂的对象,而不仅仅是键和值的简单列表。
JSON 可以用来表示数组:当需要表示一组值时,JSON 不但能够提高可读性,而且可以减少复杂性。例如,假设您希望表示一个人名列表。在 XML 中,需要许多开始标记和结束标记;如果使用典型的名称 / 值对(就像在本系列前面文章中看到的那种名称 / 值对),那么必须建立一种专有的数据格式,或者将键名称修改为 person1-firstName这样的形式。
JSON格式是1999年《JavaScript Programming Language, Standard ECMA-262 3rd Edition》的子集合,所以可以在JavaScript以eval()函式(javascript通过eval()调用解释器)读入。不过这并不代表JSON无法使用于其他语言,事实上几乎所有与网页开发相关的语言都有JSON函式库。
由于JSON在语法上是JavaScript的子集合,所以一般都会使用eval()作为读取资料的方式,如果是针对可靠的数据来源,在不支持原生JSON解析的浏览器上面这是最快速的方法。然而由于eval方法同样可以执行任意的JavaScript代码,因此当数据来源不可靠时则可能产生安全性问题。其中一种防止不安全代码出现的解决办法,是透过浏览器原生支持的JSON.parse(str)方法读取JSON资料,目前已经得到大部分主流浏览器的支持(IE8+,Firefox 3.5+,Chrome4+/Safari4+,Opera10+),在不支持原生JSON对象的浏览器上面可以使用parseJSON方法进行读取,parseJSON采用解析器验证读入的代码是否真的是JSON代码,这样就提供了较好的安全性。但由于这是用模拟的方式读取,速度上会比eval()慢。另外一个安全上的问题则是跨站请求伪造(Cross-site request forgery,简称CSRF或XSRF)。这个问题在Javascript中的状况是,由于Javascript采用了称为“沙盒”的机制,这种机制限制Javascript引擎仅能引入同一个站点的代码,因而某种程度上提高了安全性。
上一篇:Linkshare
栏 目:美国
栏 目:编程 站长 电脑 食品 模型 会计 工控 养殖 电工 植物
本文标题:JSON格式
本文地址:http://www.101212.com/site/123279.html
本文地址:http://www.waiguowangzhan.com/site/123279.html
本文地址:http://www.fobbusinessforum.com/site/123279.html
相关内容:192.168.0.1登录入口192.168.1.1路由器怎么设置?
相关内容:阿里云服务器新购、复购、升级优惠活动推荐
相关内容:502 bad gateway是什么意思?怎么解决?
您可能感兴趣的文章
- 02-23狮城网
- 02-27加拿大邮政档案馆
- 03-01CouponzGuru
- 02-26EuroDocs
- 02-26Star of Mysore
- 02-26Altra Industrial Motion
- 03-01Reward Me
- 03-06时艺多媒体
- 02-27黎巴嫩外交和移民部
- 03-05高纬环球葡萄牙
- 03-03盛宝银行法国
- 02-26Nextjet
- 02-23MediaNama
- 03-06罗克韦尔自动化加拿大
- 03-08Taulia
- 03-06Eternit
- 02-26江崎格力高
- 02-24Alpha Unmanned Systems
- 02-27Shabakeh
- 03-04富士胶片澳大利亚
- 02-24Aliasworlds Entertainment
- 03-01Bhanvad.com
- 03-03嘉士伯啤酒意大利
- 03-06Aprilia比利时
- 03-01GHM
- 03-01Mozy爱尔兰
- 02-26美国威斯康星大学合作社中心
- 02-27Jockey巴基斯坦
- 03-05OLX土耳其
- 03-07台湾好新闻报
- 03-05英国犯罪作家协会
- 03-06Yalwa加拿大
- 03-01PorkyPost.com
- 03-04Yasni丹麦
- 03-10LaunchGrm
- 02-25Boryszew
- 03-02AvaTrade波兰
- 03-04玫琳凯澳大利亚
- 03-07Creditsafe芬兰公司
- 03-06InThralld
- 02-26Providence Biltmore
- 02-26阿拉克机场
- 02-25标致斯里兰卡
- 03-09青年成就美国卡罗莱纳州中部
- 03-03Farnell element14挪威
- 02-26马来西亚国际医科大学
- 03-04阿古斯塔·韦斯特兰挪威
- 02-26ToursFromAbove
- 02-24凯德集团
- 03-11综合格斗中心
- 02-27日野汽车以色列
- 02-25福特英国
- 03-01Dream-Theme
- 03-02芝浦工业大学
- 03-02迪古里拉波兰
- 03-04mathworks澳大利亚
- 02-27澳大利亚国家审计署
- 03-08Pinnacle Cart
- 02-25宝马越南
- 02-27Troop Sport
- 02-26Air Trust
- 03-01Dr.G官网
- 02-25可乐丽
- 02-26白俄罗斯储蓄银行
- 03-05马自达德国
- 02-27阿曼国家委员会
热门排行
阅读排行
- 1谷歌视频
- 2Facebook
- 3法国论坛报
- 4谷歌学术搜索
- 5YouTube日本
- 6Gmail
- 7Google香港
- 8Jobrapido日本
- 9卡伦米伦
- 10招银国际
- 11亚马逊日本
- 12迪斯尼电影俱乐部
- 13卡伦米伦欧洲
- 14Twitter
- 15艾伯维公司
- 16Burn Standard Company
- 17Singareni Collieries Company
- 18eFinancialCareers丹麦
- 19美国绿色指南
- 20Panzani
- 21SK II 新加坡官网
- 22Aurore
- 23Calle Zaragosa
- 24Pixabay
- 25Nasty Gal
- 26Dzinepress
- 2724小时太阳报
- 28About