JSON知多少-JSON数据结构
最近在开发微信平台,要使用JSON进行数据交换,之前用过JSON,但仅限于……
在开发微信平台中,要使用JSON形式如下:
代码片断1:
{
"button":[
{
"type":"click",
"name":"今日歌曲",
"key":"V1001_TODAY_MUSIC"
},
{
"type":"click",
"name":"歌手简介",
"key":"V1001_TODAY_SINGER"
},
{
"name":"菜单",
"sub_button":[
{
"type":"view",
"name":"搜索",
"url":"http://www.soso.com/"
},
{
"type":"view",
"name":"视频",
"url":"http://v.qq.com/"
},
{
"type":"click",
"name":"赞一下我们",
"key":"V1001_GOOD"
}]
}]
}
然后用PHP的json_encode()函数,对一二维数组转换成JSON形式
但转换出来的JSON形式:
代码片断2:
{
"button": {
"1": {
"type": "click",
"name": "今日歌曲",
"key": "V1001_TODAY_MUSIC"
},
"2": {
"type": "click",
"name": "歌手简介",
"key": "V1001_TODAY_SINGER"
},
"3": {
"name": "菜单",
"sub_button": [
{
"type": "view",
"name": "搜索",
"url": "http://www.soso.com/"
},
{
"type": "view",
"name": "视频",
"url": "http://v.qq.com/"
},
{
"type": "click",
"name": "赞一下我们",
"key": "V1001_GOOD"
}
]
}
}
}
看出来形式是不一致的。
只能来了解一下JSON的结构形式。
JSON有两种数据:1.无序的对象结构;2.有序的数组结构
1.无序的对象结构
无序的对象结构在不同语言中称法不同,比如在Python中称为字典,在JS中称为JSON对象……
总之就是键/值对组合形式。
刚才我转换出来的JSON结构就是无序的键/值对组合
2.有序的数组结构
有序的的数组结构,即代码片断2所展示的结构。
将数组作为有序数组进行转换JSON,就可以得到有序的JOSN数组结构。
JSON知多少-JSON数据结构的更多相关文章
- javascript、js操作json方法总结(json字符创转换json对象)
相信前端的同学们对json并不陌生,接触过很多.但是很少人知道json的全称是什么,哈哈,我也是查资 料知道的.(JSON JavaScript Object Notation是一种轻量级的数据交换格 ...
- Java中net.sf.json包关于JSON与对象互转的问题
在Web开发过程中离不开数据的交互,这就需要规定交互数据的相关格式,以便数据在客户端与服务器之间进行传递.数据的格式通常有2种:1.xml:2.JSON.通常来说都是使用JSON来传递数据.本文正是介 ...
- Java中net.sf.json包关于JSON与对象互转的坑
在Web开发过程中离不开数据的交互,这就需要规定交互数据的相关格式,以便数据在客户端与服务器之间进行传递.数据的格式通常有2种:1.xml:2.JSON.通常来说都是使用JSON来传递数据.本文正是介 ...
- 【JSON解析】JSON解析
前三篇博客分别介绍了xml的三种解析方法,分别是SAX,DOM,PULL解析XML,兴趣的朋友可以去看一下这[XML解析(一)]SAX解析XML,[XML解析(二)]DOM解析XML,[XML解析(三 ...
- python中json.dump() 和 json.dumps() 有那些区别?
JSON字符串用json.dumps, json.loads JSON文件名用json.dump, json.load 以下内容摘自:<Python Cookbook> json 模块提供 ...
- Newtonsoft.Json.dll 反序列化JSON字符串
上一篇JSON博客<JSON入门级学习小结--JSON数据结构>中已对JSON做了简单介绍,JSON字符串数组数据样式大概是这样子的: 如今因为项目需求(asp.net web网站,前台向 ...
- Python中json.dump() 和 json.dumps()的区别
JSON字符串用json.dumps, json.loads JSON文件名用json.dump, json.load 以下内容摘自:<Python Cookbook> json 模块提供 ...
- json.dumps、json.dump、json.loads、json.load的区别
json 模块提供了一种很简单的方式来编码和解码JSON数据. 其中两个主要的函数是 json.dumps() 和 json.loads() 下面是如何将Python数据结构转换为json impor ...
- Json Master masters JSON!
对于一个软件开发人员, JSON 是最熟悉的东西之一了, 每一个开发人员基本上每一天都会跟 JSON 打交道. 作为一个大前端开发人员, 当看到从服务器返回的 JSON 数据时, 尤其是大数据量或者复 ...
- python中json.dump()与json.dumps()的区别
1.将python数据结构转换为json字符串(json.dumps()) >>> import json >>> data={'name':'pipi','age ...
随机推荐
- java带图片的邮件发送方法实现
package sendEmail; import java.util.Properties; import javax.activation.DataHandler; import javax.ac ...
- 关于WinRT中c++和c#相互调用的问题
先说结论(不见得是最终正确的结论,不过google了一晚上也没有查出个所以然来,即便有解决方法我也认为是微软傻x): 首先c#和c++理所应当的不应该在同一个工程中,而只能是同一个工程的两个项目.只能 ...
- Eclipse reports that Android SDK Content Loader has encountered a problem. parseSdkContent failed.
1) Download the SDK platform for API 20 (4.4W) 2) Navigate to your sdk folder (should be like D:\Ecl ...
- C++ ORM ODB 入门介绍(二)
目录[-] 1. ODB中的继承类型 2. abstract和polymorphic的区别 3.polymorphic表格 4.早期版本如何实现polymorphic 5.实例 本节主要介绍ODB中的 ...
- android开发之ExpandableListView的使用,实现类似QQ好友列表
由于工作需要,今天简单研究了一下ExpandableListView,做了一个类似QQ列表的Demo,和大家分享一下. 效果图如下: 先来看看主布局文件: <RelativeLayout xml ...
- ASP.NET 开发人员应该知道的8个网站
1.CodeProject http://www.codeproject.com/ 2.DotNetNuke 3.4GuysFromRolla 4.DevSource 5.DevX http://ww ...
- mysq优化参数详解:innodb_buffer_pool_size,innodb_file_per_table
Mysql配置参数: thread_pool:如果支持的话,使用线程池 innodb_buffer_pool_size:物理内存50%-70%最高80%独立实例,多实例:60% innodb_flus ...
- JVM笔记5:Class文件结构
Class文件是一组以8位字节为基础单位的二进制流,包含多个数据项目(数据项目的顺序,占用的字节数均由规范定义),各个数据项目严格按照顺序紧凑的排列在Class文件中,不包含任何分隔符,使得整个Cla ...
- js广告浮动
一个广告框在指定区域,有定位属性的父级区域内,一直向右向左移动,如果碰到左右边框,反向,如果碰到上下边距,反向,实现在指定框中浮动的效果. <!doctype html> <html ...
- struts中调用servlet的两种方法——IcC方式和非IoC方式的代码demo
package com.java1234.action;//所在的包 import java.sql.Connection;//数据库连接的类 import java.util.ArrayList;/ ...