从零学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 相关文章推荐
JavaScript的Cookies
Jan 16 Javascript
xml分页+ajax请求数据源+dom取结果实例代码
Oct 31 Javascript
js 设置缓存及获取设置的缓存
May 08 Javascript
原生javascript 学习之js变量全面了解
Jul 14 Javascript
深入浅出讲解ES6的解构
Aug 03 Javascript
AngularJS入门教程引导程序
Aug 18 Javascript
AngularJS框架中的双向数据绑定机制详解【减少需要重复的开发代码量】
Jan 19 Javascript
Ajax验证用户名或昵称是否已被注册
Apr 05 Javascript
jQuery Autocomplete简介_动力节点Java学院整理
Jul 17 jQuery
使用Ajax和Jquery配合数据库实现下拉框的二级联动的示例
Jan 25 jQuery
微信小程序去除左上角返回键的实现方法
Mar 06 Javascript
JavaScript文档加载模式以及元素获取
Jul 28 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
牡丹941资料
2021/03/01 无线电
UCenter中的一个可逆加密函数authcode函数代码
2010/07/20 PHP
PHP在线生成二维码代码(google api)
2013/06/03 PHP
js静态作用域的功能。
2006/12/25 Javascript
JS随即打乱数组实现代码
2012/12/03 Javascript
sails框架的学习指南
2014/12/22 Javascript
jquery制作 随机弹跳的小球特效
2015/02/01 Javascript
AngularJs学习第五篇从Controller控制器谈谈$scope作用域
2016/06/08 Javascript
利用Node.js+Koa框架实现前后端交互的方法
2017/02/27 Javascript
JS对象创建的几种方式整理
2017/02/28 Javascript
vue中用动态组件实现选项卡切换效果
2017/03/25 Javascript
AngularJS+bootstrap实现动态选择商品功能示例
2017/05/17 Javascript
微信小程序实现日历效果
2018/12/28 Javascript
详解基于 Node.js 的轻量级云函数功能实现
2019/07/08 Javascript
layer.open弹层查看缩略图的原图,自适应大小的实例
2019/09/05 Javascript
vue+element树组件 实现树懒加载的过程详解
2019/10/21 Javascript
JavaScript setInterval()与setTimeout()计时器
2019/12/27 Javascript
vue-cli3.0实现一个多页面应用的历奇经历记录总结
2020/03/16 Javascript
[01:11:11]Alliance vs RNG 2019国际邀请赛淘汰赛 败者组BO1 8.20.mp4
2020/07/19 DOTA
Python 可爱的大小写
2008/09/06 Python
Python实现模拟时钟代码推荐
2015/11/08 Python
在PyCharm中批量查找及替换的方法
2019/01/20 Python
python pexpect ssh 远程登录服务器的方法
2019/02/14 Python
Python socket实现的文件下载器功能示例
2019/11/15 Python
Python class的继承方法代码实例
2020/02/14 Python
详解用Python爬虫获取百度企业信用中企业基本信息
2020/07/02 Python
详解CSS3的box-shadow属性制作边框阴影效果的方法
2016/05/10 HTML / CSS
遮罩层 + Iframe实现界面自动显示的示例代码
2020/04/26 HTML / CSS
英国汽车和货车租赁网站:Hertz英国
2016/09/02 全球购物
2014迎新年晚会策划方案
2014/02/23 职场文书
基督教婚礼主持词
2014/03/14 职场文书
关于环保的活动方案
2014/08/25 职场文书
撤诉申请怎么写
2015/05/19 职场文书
导游词之徐州-云龙山
2019/09/29 职场文书
MySQL 数据类型详情
2021/11/11 MySQL
CSS实现背景图片全屏铺满自适应的3种方式
2022/07/07 HTML / CSS