JSON笔记

Posted 轻聆世界

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JSON笔记相关的知识,希望对你有一定的参考价值。


1、什么是JSON?

JSON,全称javascript Object Notation,是JavaScript中储存数据的一种方式。

2、JSON的两种结构

(1)对象,举例:{“key1”:“value1”,”key2”:”value2”}

(2)数组,举例:[{“key1”:”value1”},{“key2”:”value2”}]

3、两种结构的对比

若定义varjson = {“key1”:“value1”,”key2”:”value2”},则 json.key1=value1,json.key2=value2

若定义varjson = [{“key1”:”value1”},{“key2”:”value2”}],则json[0].key1=value1,json[1].key2=value2

4、JSON和String的关系

JSON的对象类型为Object,String的对象类型为String,可以用”typeof(xx)”方法查看。

在JS中,可以实现JSON对象和String之间的转换:

通过”JSON.stringify(json)”将JSON对象转换为String字符串,JSON对象和JSON数组最终会以对应的格式呈现

满足格式条件的String字符串,在引入jQuery.js文件后,可以通过“jQuery.parseJSON(str)”将其转换为对应结构的JSON对象。

5、特殊的JSON

JSON的value值不仅仅可以是String,也可以是JSON对象或JSON数组,还可以是number、boolean值、null、object或者array等,并且这些结构可以嵌套,举例:

若var json= {"key":{"key1":"value1"}},则json.key.key1=value1

若var json= {"key":[{"key1":"value1"}]},则json.key[0].key1=value1

若var json= {"key":true},则json.key=true

若var json= {"key":10},则json.key=10

若var json= {"key":null},则json.key=null

6、扩展

(1)JSON作为ajax的返回

用ajax调用后台方法时,若设置dataType为json,当返回值不是通过已有jar包的方法将对象转换为JSON对象,在编辑返回值JSON时,key和value对应的引号应用转义字符处理,如:{“key”:“value”}的正确写法应该为“{\“key\”:\“value\”}”。

(2)java中的JSON

由于在java中,json是map集合的一个实现类,故可以直接通过json.key获取value值,除此以外,也可以通过引入相关的jar包,实现JSON和String、JSON和map等类型转换。


以上是关于JSON笔记的主要内容,如果未能解决你的问题,请参考以下文章

IOS 初学者笔记(三)JSON转Model

JSON学习笔记

MySQL 学习笔记 JSON 类型

MySQL 学习笔记 JSON 类型

Newtonsoft.Json(Json.Net)学习笔记

Newtonsoft.Json(Json.Net)学习笔记