从零学JSON之JSON数据结构


Posted in Javascript onMay 19, 2014

最近在开发微信平台,要使用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数组结构。

Javascript 相关文章推荐
Jquery 获取表单text,areatext,radio,checkbox,select值的代码
Nov 12 Javascript
Flex通过JS获取客户端IP和计算机名的实例代码
Nov 21 Javascript
快速解决FusionCharts联动的中文乱码问题
Dec 04 Javascript
JavaScript中判断整数的多种方法总结
Nov 08 Javascript
jquery使用slideDown实现模块缓慢拉出效果的方法
Mar 27 Javascript
深入探究使JavaScript动画流畅的一些方法
Jun 30 Javascript
jquery实现带缩略图的可定制高度画廊效果(5种)
Aug 28 Javascript
jQuery获取checkboxlist的value值的方法
Sep 27 Javascript
javascript生成随机数方法汇总
Nov 12 Javascript
基于JavaScript实现Json数据根据某个字段进行排序
Nov 24 Javascript
js实现消息滚动效果
Jan 18 Javascript
微信小程序实现弹出菜单
Jul 19 Javascript
jquery 选取方法都有哪些
May 18 #Javascript
jquery中获得元素尺寸和坐标的方法整理
May 18 #Javascript
JQuery打造省市下拉框联动效果
May 18 #Javascript
通过$(this)使用jQuery包装后的方法或属性
May 18 #Javascript
用jquery实现的一个超级简单的下拉菜单
May 18 #Javascript
Jquery 返回json数据在IE浏览器中提示下载的问题
May 18 #Javascript
绑定回车enter事件代码
May 18 #Javascript
You might like
用php写的serv-u的web申请账号的程序
2006/10/09 PHP
php检测文本的编码
2015/07/26 PHP
详解PHP中的 input属性(隐藏 只读 限制)
2017/08/14 PHP
Laravel 创建可以传递参数 Console服务的例子
2019/10/14 PHP
JavaScript 高级篇之闭包、模拟类,继承(五)
2012/04/07 Javascript
无缝滚动js代码通俗易懂(自写)
2013/06/19 Javascript
Javascript模块化编程详解
2014/12/01 Javascript
jQuery之DOM对象和jQuery对象的转换与区别分析
2015/01/08 Javascript
JavaScript多并发问题如何处理
2015/10/28 Javascript
Angular 应用技巧总结
2016/09/14 Javascript
jQuery实现仿京东防抖动菜单效果示例
2018/07/06 jQuery
基于vue实现移动端圆形旋钮插件效果
2018/11/28 Javascript
JS对象和字符串之间互换操作实例分析
2019/02/02 Javascript
微信小程序页面传多个参数跳转页面的实现方法
2019/05/17 Javascript
vue-cli3+ts+webpack实现多入口多出口功能
2019/05/30 Javascript
深入理解 ES6中的 Reflect用法
2020/07/18 Javascript
javascript贪吃蛇游戏设计与实现
2020/09/17 Javascript
[10:07]2014DOTA2国际邀请赛 实拍选手现场观战DK对阵Titan
2014/07/12 DOTA
Python回调函数用法实例详解
2015/07/02 Python
Python中的字典与成员运算符初步探究
2015/10/13 Python
Django应用程序中如何发送电子邮件详解
2017/02/04 Python
Python时间的精准正则匹配方法分析
2017/08/17 Python
VSCode下好用的Python插件及配置
2018/04/06 Python
django 多数据库配置教程
2018/05/30 Python
Python实现计算字符串中出现次数最多的字符示例
2019/01/21 Python
Python程序打包工具py2exe和PyInstaller详解
2019/06/28 Python
python 实现从高分辨图像上抠取图像块
2020/01/02 Python
详解利用canvas实现环形进度条的方法
2019/06/12 HTML / CSS
Manduka官网:瑜伽垫、瑜伽毛巾和服装
2018/07/02 全球购物
党员自我批评与反省材料
2014/02/10 职场文书
社区维稳工作方案
2014/06/06 职场文书
父亲节活动总结
2015/02/12 职场文书
财务管理制度范本
2015/08/04 职场文书
Vue+Element UI实现概要小弹窗的全过程
2021/05/30 Vue.js
DSP接收机前端设想
2022/04/05 无线电
kubernetes集群搭建Zabbix监控平台的详细过程
2022/07/07 Servers