`

原创:JSON入门详解

    博客分类:
  • 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


分享到:
评论

相关推荐

    json-smart-2.4.7-API文档-中文版.zip

    赠送jar包:json-smart-2.4.7.jar; 赠送原API文档:json-smart-2.4.7-javadoc.jar; 赠送源代码:json-smart-2.4.7-sources.jar; 赠送Maven依赖信息文件:json-smart-2.4.7.pom; 包含翻译后的API文档:json-smart...

    json-20180813-API文档-中文版.zip

    Maven坐标:org.json:json:20180813; 标签:json、jar包、java、中文文档; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和...

    json入门教程入门教程

    JSON 入门教程 JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,它基于纯文本,易于人阅读和编写,同时也易于机器解析和生成。JSON 数据格式具有简单性、灵活性和跨平台、跨语言的特点,使其在 Web...

    Json入门教程详解基础

    Json 入门教程详解基础 Json 是一种轻量级的数据交换格式,相比 XML 和 HTML 片段,它提供了更好的简单性和灵活性。Json 数据格式解析简单,易于阅读和编写,可以传输简单的 String、Number、Boolean,也可以传输...

    maven中 引入jar报错:Missing artifact net.sf.json-lib:json-lib:jar:2.4

    &lt;groupId&gt;net.sf.json-lib&lt;/groupId&gt; &lt;artifactId&gt;json-lib &lt;version&gt;2.4 &lt;classifier&gt;jdk15 或者直接下载这个包

    JSON入门教程.pdf

    JSON 入门教程 JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人类阅读和编写,同时也易于机器解析和生成。 JSON 是基于纯文本的数据格式,天生是为 JavaScript 准备的,因此 JSON 的数据...

    TCL解析json

    然后你可以使用`::json::read`或`::json::decode`函数来解析JSON字符串: ```tcl set jsonString "{ \"name\":\"John\", \"age\":30, \"city\":\"New York\" }" set jsonData [::json::read $jsonString] ``` 在这...

    JSON 入门指南 --Word格式

    JSON 入门指南 JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,非常适合于服务器与 JavaScript 的交互。下面是 JSON 的一些基本概念和特性: 1. JSON 是一种基于纯文本的数据格式,易于人类阅读...

    JSON入门与实战详解

    JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。它是基于JavaScript的一个子集,但JSON不仅仅是JavaScript的专利,它被广泛应用于各种编程语言中,...

    json入门基础教程

    ### JSON入门基础教程:理解与应用 #### 一、JSON概览 JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。JSON是基于JavaScript的一个子集,它使用了...

    json入门,适合初学者

    JSON,全称JavaScript ...通过学习提供的“json入门”文档,初学者可以系统地了解JSON的基本概念、语法,并逐步掌握如何在实际项目中使用JSON进行数据交换。在实践中不断练习,才能真正熟练掌握这一重要的数据格式。

    json-server-auth:JSON服务器的身份验证和授权流程

    入门同时安装JSON服务器和JSON服务器认证: # NPMnpm install -D json-server json-server-auth# Yarnyarn add -D json-server json-server-auth 使用users集合创建db.json文件: { " users " : []} 启动JSON服务器...

    Dynamics CRM 2011 编程系列:JSON序列化类

    在这个特定的知识点中,我们聚焦于“Dynamics CRM 2011 编程系列:JSON序列化类”。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,广泛用于Web服务和客户端脚本之间的数据传递。在Dynamics CRM ...

    JSON 入门指南--(PDF电子书+随书源码)免费

    本资源提供了一本“JSON入门指南”的PDF电子书,旨在帮助初学者快速掌握JSON的基本概念和用法。书中可能涵盖了以下几个方面: 1. **JSON基础**:介绍JSON的起源和特点,以及为什么在Web开发中如此重要。会讲解JSON...

    json-lib-2.4-jdk15.jar下载

    json-lib-2.4-jdk15.jar下载,json-lib是一款简单易用的Java JSON库。它可以将Java对象转换成JSON字符串,也可以将JSON字符串转换成Java对象。json-lib体积小、无依赖,性能表现也不错,适合在各种Java项目中使用。 ...

    Json 入门学习资料

    以下是一些关于JSON的基础知识和入门要点: 1. **JSON的结构**: JSON主要由两种基本结构组成: - 对象(Object):以花括号 `{}` 包裹,内部由一系列键值对(Key-Value)构成,键和值之间用冒号 `:` 分隔,键值...

    MFC使用json11解析JSON

    此外,为了将MFC应用的内部数据结构序列化为JSON,你可以创建相应的函数,将对象的属性映射到json11对象,然后调用`Json::dump`。 在实际项目中,你可能还需要处理JSON解析的错误情况,比如使用`Json::parse`时可能...

    圣经:圣经:JSON + XML

    圣经:圣经:JSON + XML

    图文教程 - 2024年最新VSCode下载和安装教程c/c++环境配置,json文件详解

    图文教程 | 2024年最新VSCode下载和安装教程c/c++环境配置,json文件详解,图文教程 | 2024年最新VSCode下载和安装教程c/c++环境配置,json文件详解,图文教程 | 2024年最新VSCode下载和安装教程c/c++环境配置,json...

Global site tag (gtag.js) - Google Analytics