JSON数据格式
来源:互联网 发布:手机麻将源码带房卡 编辑:程序博客网 时间:2024/05/17 18:45
我们先来看下w3cschool对json的定义:
JSON:JavaScript 对象表示法(JavaScript Object Notation)。
JSON 是存储和交换文本信息的语法。类似 XML。
JSON 比 XML 更小、更快,更易解析。
使用中,json有以下三种结构:
- 对象:{"name":"Michael","age":24}
- 数组:比如:[{"name":"Michael","age":24},{"name":"Tom","age":25}]
- 值:{"name":"Michael", "birthday":{"month":8,"day":26}},类似于对象嵌套对象.
很多人疑惑{}和[]形式的区别。看到一段很经典的总结:大括号{}用来描述一组“不同类型的无序键值对集合”(每个键值对可以理解为OOP的属性描述),方括号[]用来描述一组“相同类型的有序数据集合”(可对应OOP的数组)。
上面的例子中,键都是字符串形式,值可以取任意类型。对于var p1={name:"Michael",age:24},我们称为对象自面量。两者是不同的,例子后面会讲到。
访问json数据的两种方法:
//例子var obj={name:"Michael",age:24};obj.name;//方式1,和java语言中访问对象的属性是一样的。alert(obj["name"]) //方式2,和js中数组的访问方式是一样的。
Json数据字符串化(序列化):
Json数据是跨平台的,在网络数据传输流程中,json是以文本,即字符串的形式传递的,各种语言对字符串的处理比较统一。而在JS是 对象的形式。
JSON.stringify()将JSON对象转为JSON字符串(序列化);
JSON.parse()将JSON字符串转为JSON对象(反序列化)
例子:
<script> var obj={"name":"Michael","age":24}; var obj1=JSON.stringify(obj);//注意:json全大写 alert(obj);//弹出Object类型;说明是对象 alert(obj.name);//弹出属性值 alert(obj1);//弹出转化为字符后的; var obj2 = JSON.parse(obj1); alert(obj2)//转换后,弹出Object类型;说明已经转化成对象;</script>
对象字面量的例子:
<script> var obj={name:"Michael",age:24}; alert(obj);//弹出Object类型;说明是对象 alert(obj["name"])//alert(obj.name),但是obj[name]不行 var obj1=JSON.stringify(obj);//注意:json全大写 alert(obj1);//弹出转化为字符后的;{"name":"Michael","address":24};</script>
这个例子看出,对象字面量的使用方法跟json完全一样。个人以为,可以理解为已经转化成json了。
阅读全文
0 0
- json数据格式
- Json数据格式
- json数据格式
- JSON数据格式
- JSON数据格式
- JSON数据格式
- JSON数据格式
- JSON数据格式
- JSON数据格式
- Json 数据格式
- JSON数据格式
- JSON 数据格式
- Json数据格式
- JSON数据格式
- json数据格式
- JSON 数据格式
- JSON 数据格式
- JSON 数据格式
- 明确方向之—MYSQL DBA
- Attempt to invoke virtual method 'boolean java.lang.String.equals(java.lang.Object)' on a null objec
- 深入浅出程序化交易核心技术
- scripts(1-13) of 笨办法学Python
- 51Nod 1126 求递推序列的第N项 矩阵快速幂
- JSON数据格式
- Java中List实现类的性能分析和应用场景(基于JDK1.8)
- 2017.12.05 数据库联表查询
- Python 从入门到实践 6-1 课后习题
- 输入和输出
- url-pattern / 与 /* 的区别
- 深度神经网络全面概述:从基本概念到实际模型和硬件基础
- 策略模式
- 高数 06.03 积分习题课03测试题