什么是JSON? 尤其是百度上当你搜JSON数组、JSON字符串、JSON对象时。看到结果后你就凌乱啦。下面总结总结,看后有不妥的地方留言即可。
JSON:JavaScript 对象表示法(JavaScript Object Notation)。
想想JS有什么数据类型?JSON呢?
1.JSON的形式
1.1用大括号“{}”包围起来的项目列表,每一个项目间用逗号(,)分隔,而项目就是用冒号(:)分隔的属性名和属性值。
1.2用中括号“[]” 包围起来的。与js数组没有区别。
2. JSON 结构
JSON有两种结构
1、对象:对象在js中表示为“{}”括起来的内容,数据结构为 {key:value,key:value,...}的键值对的结构,在面向对象的语言中, key为对象的属性,value为对应的属性值,所以很容易理解,取值方法为 对 象.key 获取属性值,这个属性值的类型可以是 数字、字符串、数组、对象几种。
2、数组:数组在js中是中括号“[]”括起来的内容,数据结构为 ["java","javascript","vb",...],取值方式和所有语言中一样,使用索引获取,字段值的类型可以是 数字、字符串、数组、对象几种。
JSON 数组
数组作为 JSON 对象 [ "Google", "Runoob", "Taobao" ]JSON 对象中的数组
{"name":"网站","num":3,"sites":[ "Google", "Runoob", "Taobao" ]}
3.JSON 语法规则
JSON 语法是 JavaScript 对象表示法语法的子集。
1 .key/value键值对中
key 比如是用"" 必须!!!
value可以是:
1.数字(整数或浮点数)
2.字符串(在双引号中)
3.逻辑值(true 或 false)
4.数组(在方括号中)
5.对象(在花括号中)
6.null
除以上6种外,再无其他,没有像js一样的undefined、NAN
JavaScript中有5种简单数据类型(也称为基本数据类型):Undefined、Null、 Boolean、Number(NAN)和String和Object 。
2.数据由逗号分隔 并列的数据之间用逗号(", ")分隔。
3.花括号保存对象 映射的集合(对象)用大括号("{}")表示。
4.方括号保存数组 并列数据的集合(数组)用方括号("[]")表示。常见用法
1.JSON.parse() 将JSON字符串转化成JSON对象。
2.JSON.eval() 将JSON字符串转化成JSON对象
var a={\"name\":\"zhangsan\", \"age\":18}";
JSON.parse(a); ===>>>{"name":"zhangsan", "age":18}
eval("("+a+")") ===>>>{"name":"zhangsan", "age":18}
应用场景 :后台返回来的JSON字符串就可以利用这个两个方法来处理。
3.JSON.string.fy()将 JSON 对象转化成 JSON字符串。
var a={"name":"zhangsan", "age":18}
JSON.Stringify(a)===>>>"{\"name\":\"zhangsan\", \"age\":18}"