您的位置:首页 > Web前端 > JavaScript

【JSON介绍】什么是JSON?

2017-03-29 11:03 369 查看

相关文章:

【JSON介绍】什么是JSON?

【Ajax】Ajax介绍

【Ajax】XMLHttpRequest介绍以及在前端如何实现Ajax

【Struts2】Sturts2如何实现JSON的数据输出,完成Ajax响应

写在前面 : JSON就是一种用于数据交换的格式语言,主要有两个结构,键值对和数组,通过一定的封装可以传输较为复杂的数据格式。

这里还有一份官方文档(中文)可供大家参考

不过我更推荐来自维基百科的JSON介绍

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与XML比较

JSON与XML最大的不同在于XML是一个完整的标记语言,而JSON不是。这使得XML在程序判读上需要比较多的功夫。主要的原因在于XML的设计理念与JSON不同。XML利用标记语言的特性提供了绝佳的延展性(如XPath),在数据存储,扩展及高级检索方面具备对JSON的优势,而JSON则由于比XML更加小巧,以及浏览器的内建快速解析支持,使得其更适用于网络数据传输领域。

JSON建构于两种结构

“名称/值”对的集合(A collection of name/value pairs)。不同的语言中,它被理解为对象(object),纪录(record),结构(struct),字典(dictionary),哈希表(hash table),有键列表(keyed list),或者关联数组 (associative array)。

值的有序列表(An ordered list of values)。在大部分语言中,它被理解为数组(array)。

名称/值 :
{key:value}


数组:
[value1,value2,value3]


JSON的语法

对象是一个无序的“‘名称/值’对”集合。一个对象以“{”(左括号)开始,“}”(右括号)结束。每个“名称”后跟一个“:”(冒号);“‘名称/值’ 对”之间使用“,”(逗号)分隔。

例如:

{
"code": 200,
"msg": "成功"
}


数组是值(value)的有序集合。一个数组以“[”(左中括号)开始,“]”(右中括号)结束。值之间使用“,”(逗号)分隔。

例如:

[1,2,3,4,5]


但是这种写法有时候单纯的看这个json无法正确的知道这个json的含义,所以一般这样写:

{
"studentNumber": [
1,
2,
3,
4,
5
]
}


代表这个数组传输的是学生的学号

一般情况下,我们会使用一些固定的格式来封装json,比如下面的这个格式:

{
"code": 200,
"msg": "成功",
"data": [
{
"name": "name1",
"email": "email1"
},
{
"name": "name2",
"email": "email2"
},
{
"name": "name3",
"email": "email3"
}
]
}


可能大家第一眼看着这个JSON过于复杂,是不是在封装的时候需要很多代码才能完成。后面我会单独写一篇使用Google的Gson来完成这个JSON格式的封装。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  javascript json