- 浏览: 221468 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
July01:
最近了解到一款StratoIO打印控件,功能如下:1、Html ...
(原创)javascript 实现批量打印《简历》 -
liangchengfck1:
这个只能正对数据量少的批量打印,当你打印10000张数据的时候 ...
(原创)javascript 实现批量打印《简历》 -
dare_:
官网的文档明确说明 是五种 你的默认和no应该是同一种
Spring 中Bean的自动装配六种模式,你懂得几种? -
Franciswmf:
图片上传的东西呢?
java+Ckeditor -
huigou:
地址不对了
ETL Kettle发送邮件时发送失败!高手指点!
Json 浅谈及解析
Json简介
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。易于人阅读和编写,同时也易于机器解析和生成。它基于JavaScript(Standard ECMA-262 3rd Edition - December 1999)的一个子集。 JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C++, C#, Java, JavaScript, Perl, Python等)。
Json优点:
Json比xml更轻巧,在JavaScript中处理JSON数据不需要任何特殊的API或工具包
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
了解规格后,那我们如何编写一个正规的json
Student=[
{
Name="wangli",
Sex="男",
Age=20,
Email="wangliai@qq.com",
},
{
Name="wangli",
Sex="男",
Age=20,
Email="wangliai@qq.com",
}
]
这就是一个简单的json文档
* 值得注意的是:
JSON 用冒号(而不是等号)来赋值。每一条赋值语句用逗号分开。整个对象用大括号封装起来。可用大括号分级嵌套数据。
对象描述中存储的数据可以是字符串,数字或者布尔值。对象描述也可存储函数,那就是对象的方法。
创建json之后 我们进一步对这个json进行解析
解释json时要注意的是
1,JSON 只是一种文本字符串。它被存储在 responseText 属性中
2, 为了读取存储在 responseText 属性中的 JSON 数据,需要根据 JavaScript 的 eval 语句。函数 eval 会把一个字符串当作它的参数。然后这个字符串会被当作 JavaScript 代码来执行。因为 JSON 的字符串就是由 JavaScript 代码构成的,所以它本身是可执行的
如:var students=eval(xhr.respnoseText);
3,JSON还提供了json.js包,下载http://www.json.org/json.js后,使用parseJSON()方法将字符串解析成 JS 对象
解释上面的json代码如下
<script type="text/javascript"> function getxhr(){ var xhr; try{ xhr=new ActiveXObject("MicrosoftHTTP"); }catch (err) { try{ xhr=new XMLHttpRequest(); }catch (er) { alert("浏览器不支持......"); } } return xhr; } //获取ID function $(id){ return document.getElementById(id); } function jsjosn(){ var xhr=getxhr(); xhr.open("get","josn.jsp",true); xhr.send(); xhr.onreadystatechange=function (){ if(xhr.readyState==4 && xhr.status==200){ var stues=eval("("+xhr.responseText+")"); var stus=$("testjosn"); stus.innerHTML="";//清空stus中的文本 for(var i=0;i<stues.length;i++){ var stre=document.createElement("tr"); var sname=document.createElement("td"); var ssex=document.createElement("td"); var sage=document.createElement("td"); var semail=document.createElement("td"); //添加姓名 sname.appendChild(document.createTextNode(stues[i].name)) //添加性别 ssex.appendChild(document.createTextNode(stues[i].sex)) //添加年龄 sage.appendChild(document.createTextNode(stues[i].age)) //添加邮箱 semail.appendChild(document.createTextNode(stues[i].email)) stre.appendChild(sname); stre.appendChild(ssex); stre.appendChild(sage); stre.appendChild(semail); stus.appendChild(stre); } } } } </script> </head> <body> <div align="center" style="border:1px solid red;"> <input type="button" value="解析josn" onclick="jsjosn()" /> <table cellpadding="0" cellspacing="0" border="1px" > <caption>信息表</caption> <thead> <tr> <th>姓名</th> <th>性别</th> <th>年龄</th> <th>邮箱</th> </tr> </thead> <tbody id="testjosn"> </tbody> </table> </div> </body> </html>
<!--EndFragment-->
发表评论
-
项目框架和项目架构的区别是什么?
2012-05-17 12:31 1793项目框架和项目架构的区别是什么?谁能告诉我啊! -
(原创)javascript 实现批量打印《简历》
2012-04-16 15:57 20752(原创)javascript 实现批量打印《简历》 ... -
java+Ckeditor
2012-03-23 18:09 1880CKEditor 二次开发 ---- 为 ... -
iteye 这是咋了
2012-03-23 17:45 11iteye这是咋了 发一篇文章就这么难嘛 越来越他妈的垃圾了 ... -
不查不知道 一查全知道(hibernate注解实现set集合排序)
2011-12-21 16:09 1338@ManyToMany(cascade = { Cascade ... -
《终于解决了》检索 COM 类工厂中 CLSID 为 {0002E510-0000-0000-C000-000000000046}
2011-08-24 18:23 42082异常详细信息: System.Runtime.InteropS ... -
JDK7.0语法新特性及下载
2011-08-12 17:28 27791,菱形语法(泛型实例 ... -
系统性能调优总结分享(转载)
2011-07-01 13:33 1513概述 Ø 性能优化的思 ... -
JAVA内存问题:Java heap space
2011-06-29 14:09 1911错误信息: javax.servlet.Servle ... -
Jquery从入门到精通及附件下载(一)
2011-03-30 08:15 3775Jquery从入门到精通及 ... -
Ajax 实现分页及表与表的级联
2011-03-24 20:57 1447Ajax 实现分页及表与表的级联 时间过的真快转 ... -
《神》预测本周五 java 考试题!!
2011-03-22 19:56 1210预测本周五 java 考试题!! 1,加载类有哪几 ... -
DOM总结(三)及综合案例
2011-03-17 20:59 1044DOM总结(三)及综合案例 1,DOM属性-----re ... -
DOM 总结(二)
2011-03-16 20:30 1269DOM 总结(二) 查找元素的方法: 1 ... -
DOM 总结(一)
2011-03-16 20:24 1419DOM 总结(一) ... -
javascript实现全选,反选及全不选
2011-03-15 19:53 1366javascript实现全选,反选及全部选 html 代 ... -
仿谷歌,百度分页计算分析 代码实现
2011-03-10 19:32 1963仿谷歌,百度分页计 ... -
Java反射概念及类的反射的实例应用
2011-03-04 10:32 2309Java反射概念及类的反射的实例 一、反射的概念 : ... -
BeanUtils工具包下载及应用
2011-03-04 10:23 18654BeanUtils工具包下载及应用 ... -
“世界上最复杂的邮件”诞生了
2011-03-04 08:04 1272“世界上最复杂的邮件” ...
相关推荐
NULL 博文链接:https://anlulu.iteye.com/blog/1834835
在www.json.org上公布了很多JAVA下的json构造和解析工具,其中google-gson和org.json比较简单,两者使用上差不多但还是有些区别。下面我们就来分别介绍下用他们构造和解析Json数据的方法示例。
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,同时也易于机器解析和生成、易于理解、阅读和撰写,而且Json采用完全独立于语言的文本格式,这使得Json成为理想的数据交换语言。 JSON建构于两种...
文件解析要求,json解析和xml解析,前面文章说过Json转实体类,这里就说说解析XML 内容: Android Studio 解析XML常见的三种方式:DOM PULL SAX (实现XML转实体类并打印输出) 效果演示: 二丶正文 SAX(Simple ...
1.parse 用于从一个字符串中解析出json 对象。例如 var str='{“name”:”cpf”,”age”:”23″}’ 经 JSON.parse(str) 得到: Object: age:"23" name:"cpf" _proto_:Object ps:单引号写在{}外,每个属性都必须...
1)编码 $jsonStr = json_encode($array) 2)解码 $arr = json_decode($jsonStr) <?...echo json_encode(...//需要JSON解析器或工具类 2. 解码 三种: var jsonStr = ”[{“id”:”1″,”name”:”computer”}]”;
今天主要就写写iOS中怎么解析HTML标签,我们常用的后台返回数据一般是json格式的但是有些时候如果我们收到的是带HTMl标签的我们该怎么处理他呢,今天就来说一说吧。 正文 前两天获取后台数据的时候,得到这么一条...
parse 用于从一个字符串中解析出json 对象而stringify用于从一个对象解析出字符串,这篇文章主要介绍了JSON.stringify()和JOSN.parse()方法的不同,需要的朋友可以参考下
1、JsonObject中的数据是key-value形式,通过JsonObject的keys方法得到key的迭代器是无序的,要想实现排序,目前只能通过加装一层处理(方法来自Stack Overflow,感谢大神),将key-vlaue放入ThreeMap排序,排序规则...
简介 中间件机制可以让我们在一个给定的流程中添加一个处理步骤,从而对这个流程的输入或者输出产生...app.use(bodyParser.json()) //解析 cookie app.use(cookieParser()) //拦截 app.get('/hello', function (req,
本文总结了Android客户端与服务器进行交互时,采用RESTful API +Json的交互方式,针对不同的数据形式以及不同的解析方法,如有不足之处,欢迎指正。 温馨提示:本文适合有一定Android开发经验的人阅读,如有疑问,...
余星-平安壹钱包-浅谈PostgreSQL 高可用架构.pdf 范孝剑-阿里云-PG优化器浅析.pdf 张广舟-阿里云-ApsaraDB for Greenplum介绍.pdf 高金芳-平安科技-PostgreSQL反向代理redis.pdf 张文杰-阿里云-PostgreSQL...