zoukankan      html  css  js  c++  java
  • json是个啥东东

    xml 不用说 只要是搞web开发的 没听说谁不知道的 一种类似数据传输格式定义的语言 但是他却不是一个真正的轻量级的东西 其他的不说 只要传输一点很少的数据 经过他那左括号右括号 还有什么属性 一包装 大得惊人 在网络上传输本来就是要越少越好 不过他还是有他的好的方面的

    于是做ajax之类的东东的时候就出现了另一个可以选择的数据传输方式:json 听上去好像某个美国人的名字叫“杰森” 哇哈哈英文没学好 这下人丢大了

    不要想得很神秘 其实他就是一个很长的字符串 跟xml一样按照某种格式来组织数据 json(JavaScript Object Notation)是javascript 里的对象 就是说java脚本解析他不需要其他任何附带的东西 如果你想要在其他程序或者语言(比如c# java)里解析他 请在www.json.org 下载相应的 别人写好的程序集 你也可以自己写一个 javaScript里定义数据的方式:

     1 var user = {
     2     "username": "andy",
     3     "age": 20,
     4     "info": {
     5         "tel": "123456",
     6         "cellphone": "98765"
     7     },
     8     "address": [{
     9         "city": "beijing",
    10         "postcode": "222333"
    11     },
    12     {
    13         "city": "newyork",
    14         "postcode": "555666"
    15     }
    16 }
    17 
    18 //javascript里获得数据的方式:
    19 alert(user.username);
    20 alert(user.age);
    21 alert(user.info.cellphone);
    22 alert(user.address[0].city);
    23 alert(user.address[0].postcode);
    24 // 就这么简单 嗯 奇怪了 不是说是字符串吗 怎末看着不像啊,被骗了 不是的 其实你可以在你的程序里返回一个这样的字符串
    25 //string aa="{name:'jackie',age:20,phone:'48956875'}"

    在java脚本里如果要获得这个人的年龄那么就是:aa.age 简单吧 切记一条就是:如果是[]里的就用索引取值 跟程序里一样:[0] 如果是{}里的就 直接对象.属性 :person.age   并且他还可以存储各种类型的值(int string bool)

    不足的是有很多方面比xml欠缺了很多 比如无法获得他子结点的个数 值是否为空 好像也不能判断 不过这样已经很好了

    具体请看:www.json.org

  • 相关阅读:
    Mahout推荐算法ItemBased
    ALSA安装编程指南
    windbg更改cmd的token提升其特权
    至尊问题
    什么是“Bash”破绽?
    hdu 1548 A strange lift
    C 循环链表
    C++ 链表
    C_数据结构_链表的链式实现
    C _数据结构 _线性表的顺序存储
  • 原文地址:https://www.cnblogs.com/assassinx/p/1864166.html
Copyright © 2011-2022 走看看