下面会结合 JSON 是什么?JSON用来做什么的来讲解。
JSON 是一种数据格式。它本身是一串字符串,只是它有固定格式的字符串,符合这个数据格式要求的字符串,我们称之为JSON
。
JSON 常用来数据传输,因为它易于程序之前读写操作。
JSON 它其实是来自JavaScript对对象(Object)的定义。但是它作为数据格式来使用的时候,和JavaScript没有任何关系,它只是参照了JavaScript对对象定义的数据格式。
JSON 它可以服务任何语言,C、C++、Java、Objective-C、Python、Go
、等,在各个语言中的字典、Map
和JSON
是类似的结构,所以它们之间可以相互转换。
JSON键值对数据结构如上图,以 "{"
开始,以 "}"
结束。中间包裹的为Key : Value
的数据结构。
如:
{"name":"google365"}
表达的意思就是 name = google365
,他们是字符串(String),所以要以双引号引起来。
JSON数组数据结构如上图,以 "["
开始,以 "]"
结束。中间为装起来的数据,而Value
可以为以下的任意数据类型。
JSON数据结构中的Value
可以是String、number、object、array、boolean(true/false),null
这几种数据类型。
{ "type1": "string", "type2": 31, "type3": {"name":"张三"}, "type4": ["张三","李四"], "type5": true, "type6": null, }
以上都是合法的表达方式,用 type1 ~ type6 依次表达了"String、number、object、array、boolean(true/false),null
" 这几种数据类型。
前面说了 JSON 是轻量级的文本数据交换格式,由于各个语言都支持 JSON ,JSON 又支持各种数据类型,所以JSON常用于我们日常的 HTTP 交互、数据存储等。
我们 HTTP请求 的时候,提交参数的时候,以 name = value
来表达,并且以"&"
来链接多组参数,如下:
提交账号和密码:account=84446666@qq.com&password=abcdef
我们 HTTP请求 的时候,JSON提交参数的时候,以 {
开始,中间为name = value
来表达,多组并且以","
来间隔,以}
结束,如下:
提交账号和密码:{"account":"84446666@qq.com","password":"abcdef"}
我们存储数据的时候,不管是存储到文件,还是数据库中,都可以存储JSON格式,现在好多数据库都已经开始支持JSON存储,如Mysql从 5.7
版本已经支持JSON存储,ElasticSearch更是以JSON为数据结构。
版权所属:SOJSON(原创文章)
原文地址:https://www.sojson.com/json/json_what.html
转载时必须以链接形式注明原始出处及本声明。