`
peizhiinfo
  • 浏览: 1428610 次
文章分类
社区版块
存档分类
最新评论

原创:JSON入门详解

 
阅读更多

JSONJavaScript ObjectNotation)一种简单的数据格式,比xml更轻巧。JSON它是一种轻量级的数据交换格式,非常适合于服务器与 JavaScript 的交互。JSONJavaScript原生格式,这意味着在JavaScript中处理JSON数据不需要任何特殊的API或工具包。它易于人阅读和编写,同时也易于机器解析和生成。它基于JavaScriptStandard 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、有序集合、这种数据结构在不同语言中可能有listvertor、数组和序列等实现。
3javascript中对这两种方式的语法
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对象及数组的方式,那么下面我们就来实现xmlJson之间的转换.
具体案例实现:
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-smart-2.3-API文档-中文版.zip

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

    json4s-core_2.11-3.2.11-API文档-中文版.zip

    赠送jar包:json4s-core_2.11-3.2.11.jar; 赠送原API文档:json4s-core_2.11-3.2.11-javadoc.jar; 赠送源代码:json4s-core_2.11-3.2.11-sources.jar; 赠送Maven依赖信息文件:json4s-core_2.11-3.2.11.pom; ...

    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 或者直接下载这个包

    Python基础教程:json序列化详细用法介绍.pdf

    废话不多说,我们先看看如何把Python对象变成⼀个JSON: d = dict(name='Kaven', age=17, sex='Male') print(json.dumps(d)) # {"name": "Kaven", "age": 17, "sex": "Male"} 说明: dumps()⽅法返回⼀个str,内容...

    JSON重要工具: json.js

    JSON重要工具: json.js

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

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

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

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

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

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

    谷歌浏览器JSON可视化插件:JSON-handle_0.5.6

    谷歌浏览器JSON可视化插件:JSON-handle 简单好用,方便快捷,占用空间小 安装步骤: 1、打开谷歌浏览器,进入Chrome扩展程序页面 2、地址栏直接输入chrome://extensions/ 3、打开右上角的开发者模式 4、将刚刚下载...

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

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

    json-20171018-API文档-中英对照版.zip

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

    json-20080701-API文档-中英对照版.zip

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

    json-20170516-API文档-中英对照版.zip

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

    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服务器...

    json-20160212-API文档-中英对照版.zip

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

    json入门教程入门教程

    json入门教程,可以方便大家快速的学习json的基础知识。。。

    json入门

    json入门 json入门 json入门

    json-20180813-API文档-中英对照版.zip

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

Global site tag (gtag.js) - Google Analytics