JSON入门详解

 JSON JavaScript Object Notation )一种简单的数据格式,比 xml 更轻巧。 JSON 它是一种轻量级的数据交换格式,非常适合于服务器与 JavaScript 的交互。 JSON JavaScript 原生格式 ,这意味着在 JavaScript 中处理 JSON 数据不需要任何特殊的 API 或工具包。它易于人阅读和编写,同时也易于机器解析和生成。它基于 JavaScript Standard ECMA-262 3rd Edition - December 1999 )的一个子集。 JSON 采用完全独立于语言的文本格式,但是也使用了类似于 C 语言家族的习惯(包括 C, C++, C#, Java, JavaScript, Perl, Python 等)。这些特性使 JSON 成为理想的数据交换语言。

二、 JSON 的编写规则
 JSON 的规则很简单:对象是一个无序的 “‘ 名称 / 集合。一个对象以 “{” (左括号)开始, “}” (右括号)结束。每个 名称 后跟一个 “:” (冒号); “‘ 名称 / 之间使用 “,” (逗号)分隔
   规则如下 :
  1 、映射用冒号( :)表示。名称 :
   2 、并列的数据之间用逗号( )分隔。名称 1: 1, 名称 2: 2
   3 、映射的集合(对象)用大括号( “{}” )表示。
      {
         名称 1: 1,
         名称 2: 2
      }
   4 、并列数据的集合(数组)用方括号 (“[]”) 表示。
         [
           { 名称 1: , 名称 2: 2},
           { 名称 1: , 名称 2: 2}
         ]
   5 、元素值可具有的类型: string, number, object, array, true, false, null
 
     注意:1 、JSON 用冒号( 而不是等号) 来赋值。每一条赋值语句用逗号分开。整                          个对象用大括号封装起来。可用大括号分级嵌套数据。
2、 对象描述中存储的数据可以是字符串,数字或者布尔值。对象描述也可存储函数,那就是对象的方法。
三、 JSON 主要有两种数据结构
    1 、由 key--value 对组成的数据结构。这种数据结构在不同的语言中有不同的实现 .
例如:在 javascript 中是一个对象 . 而在 java 中是一种 Map 结构 ,c 语言中是 struct ,其它的语言中可能为 record hash table 等。
    2 、有序集合、这种数据结构在不同语言中可能有 list vertor 、数组和序列等实现。
   3 javascript 中对这两种方式的语法
 1 )用于创建对象的语法
           JSON 语法创建对象更像一种 Map 结构 , 它是一种由 key-value 对组成数据结构。
                    如图就创建 Object 对象:总是以 { 开始以 } 结束 , 对象的每个属性名与属性值之间用英文的默冒号 (:) 分隔 , 多个属性之间用英文的 (,) 隔开:语法格式如下:
student = {
                     name:”kouxiaolin”,
                     age:22,
                      sex:”
                     }
备注:使用 JSON 语法创建对象时 , 属性不仅可是普通的字符,而且可以是任何基本数据类型 , 还可以是函数 , 数组 , 甚至是另外一个用 JSON 语法创建的对象 .
比如:
           teacher = {
                   name:”xiaoqian”,
                  Student:{
                       Name:”kouxiaolin”,
                       Sex:” 女”
                                                   },
               // 使用JSON为teacher对象分配一个方法
                toString:function(){
                        alert(“ 方法的测试…….”);
                       }
    }
   2 )用于创建数组的语法
      JSON 创建数组是分常重要的
JSON 创建数组以英文的中括号 [ 开始 , 然后以中括号 ] 结束 . 其中放入数组的元素 . 元素之间用英文的逗号 , 分开最后的不需要英文逗号。
例如:
                    Arr = [value1,value2,value3,………]
通过上面的讲解我理解了 JSON 创建 Javascript 对象及数组的方式 , 那么下面我们就来实现 xml Json 之间的转换 .
具体案例实现:
Xml 文件:
<? xml version = "1.0" encoding = "UTF-8" ?>
< cities >
           < province name = " 北京 " >
              < city > 大兴 </ city >
              < city > 昌平 </ city >
              < city > 朝阳 </ city >
              < city > 海淀 </ city >
              < city > 东城 </ city >
              < city > 西城 </ city >
           </ province >
           < province name = " 河南 " >
              < city > 郑州 </ city >
              < city > 安阳 </ city >
              < city > 平顶山 </ city >
               < city > 开封 </ city >
              < city > 商丘 </ city >
              < city > 洛阳 </ city >
           </ province >
</ cities >
转换成 JSON
 cities =[
        province1:{
              name: " 北京 " ,
         city[
             " 大兴 " , " 昌平 " , " 朝阳 "," 海淀 "," 东城 "," 西城 "
           ]
       } ,
        province2: {
              name: " 河南 " ,
         city[
             " 郑州 " , " 安阳 " , " 平顶山 "," 开封 "," 商丘 "," 洛阳 "
           ]
       }

    ]

以上内容归redarmy_chen原创,版权归redarmy_chen所有不得随意转载 如有问题请发送邮件到redarmy_chen@qq .com

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值