JSON是什么
JSON 是一种存储和交换数据的语法。
JSON本质就是字符串,JSON数据 是用在 语言 里面使用的。( 语言有java,c#,js )
JSON对象的意思就是一组键值对的数据对象,在JavaScript里面就是JavaScript的对象,在c#(控制器就叫c#写法),java里面就是java的json对象(类/VO),不止JavaScript里面有JSON,c#控制器也会用JSON。
JSON 是用于存储和传输数据的格式。
JSON 通常用于服务端向网页传递数据 。
JSON 指的是 JavaScript 对象表示法(JavaScript Object Notation)
JSON 是轻量级的文本数据交换格式
JSON 独立于语言:JSON 使用 Javascript语法来描述数据对象,但是 JSON 仍然独立于语言和平台。JSON 解析器和 JSON 库支持许多不同的编程语言。目前非常多的动态(PHP,JSP,.NET)编程语言都支持JSON
JSON 具有自我描述性,更易理解
JSON的诞生
JSON是 (JavaScript Object Notation, JS 对象标记),它是一种数据交换格式。在JSON出现之前,大家一直用XML来传递数据。
因为XML是一种纯文本格式,所以它适合在网络上交换数据。XML本身不算复杂,但是,加上DTD、XSD、XPath、XSLT等一大堆复杂的规范以后,任何正常的软件开发人员碰到XML都会感觉头大了,最后大家发现,即使你努力钻研几个月,也未必搞得清楚XML的规范。
终于,在2002年的一天,道格拉斯·克罗克福特(DouglasCrockford)同学为了拯救深陷水深火热同时又被某几个巨型软件企业长期愚弄的软件工程师,发明了JSON这种超轻量级的数据交换格式。
由于JSON非常简单,很快就风靡Web世界,并且成为ECMA标准。几乎所有编程语言都有解析JSON的库,而在JavaScript中,我们可以直接使用JSON,因为JavaScript内置了JSON的解析。
把任何JavaScript对象变成JSON,就是把这个对象序列化成一个JSON格式的字符串,这样才能够通过网络传递给其他计算机。
如果我们收到一个JSON格式的字符串,只需要把它反序列化成一个JavaScript对象,就可以在JavaScript中直接使用这个对象了。
如果之前只接触过存储在Excel或者sql server等结构化数据库中的结构化数据,那么第一次看到JSON格式的数据,一定觉得很新颖。先感性认识一下它,稍后来操作它。
这种数据组织方式,条理清晰,能更好的表示自然界中人或物等实体的属性关系。可以理解为一种树状结构,一棵有枝干,枝干上有叶子的树。
操作JSON
打开Ipython,将以下代码敲进去,接下来的操作也是用此变量的值作为例子。
你看了一眼,会说这我认识,不就是个字典吗?在Ipython中使用type()获得js变量的数据类型。
你说的没错儿,就是个dict类型。
(1)写入json文件
(2) 读出json文件
读出的东西保存一下,看看是个什么数据类型。
可以看到我们写入json文件的是一个dict类型,读出后还是一个dict类型。
这也就是json区别于csv文件的地方吧。csv文件呢,无论你写入的是什么类型的数据结构,读出的始终都是一串串字符。
json文件呢,本质存储的也是字符串,区别于csv的是,通过json.load读出json,可以自动解析出数据的类型。
(3)区分json.dump()与json.dumps()
json.dump()
使用时,需要指定需要写入的数据,以及一个写入流。如下代码实现的功能是把js的内容写入到桌面的一个test.json的文档中。
执行代码后可以看到桌面上多了一个test.json文件。
json.dumps()
使用的方法比较简单,直接把需要写入的dict传递给这个函数。
网工界最有含金量的思科/华为认证,到底是啥?
拿下思科/华为认证之后,身为网工的你可以:
跨越90%企业的招聘硬门槛
增加70%就业机会
拿下BAT全国TOP100大厂敲门砖
体系化得到网络技术硬实力
IE大佬年薪可达30w
如何了解 系统学习?
识别下方二维码加老杨为好友
好友验证请备注“考证”
获得1v1专属咨询 报班千元满减券