收集json解析的四种方法

Json在Web开发的用处非常广泛,作为数据传递的载体,如何解析Json返回的数据是非常常用的。下面介绍下四种解析Json的方式:

Part 1云鼎娱乐城

	var list1 = [1,3,4];
	alert(list1[1]);
	var list2 = [{"name":"leamiko","xing":"lin"}];
	alert(list2[0]["xing"])
	alert(list2[0].xing)

Part 2

var value = {
	"china":{
		"hangzhou":{"item":"1"},
		"shanghai":{"item":"2"},
		"chengdu":{"item":"3"}
	},
	"America":{
		"aa":{"item":"1"},
		"bb":{"item":"2"}
	},
	"Spain":{
		"dd":{"item":"1"},
		"ee":{"item":"2"},
		"ff":{"item":"3"}
	}
};
for(var countryObj in value)
{
	document.write(countryObj + ":<br />")
	//没用的for(var cityObj in value.countryObj)
	for(var cityObj in value[countryObj])
	{
		document.write(‘    ‘ + cityObj + "<br />");
		for(var itemObj in value[countryObj][cityObj])
		{
			document.write("      "+ itemObj + value[countryObj][cityObj][itemObj] +"<br />")
		}
	}
}

解释:

countryObj 为value对象的一个属性明,value[countryObj] 为value对象的属性值 这里为一个json对象比如b,value[countryObj][cityObj]为josn对象b的属性值 它也是一个json对象,于是 value[countryObj][cityObj]["item"]便可以取到json对象暂时成为c的值,或者 value[countryObj][cityObj].item。

总之分清是json还是array这是很关键的。

Part 3

var value2 = {
	"china":[
		{"name":"hangzhou", "item":"1"},
		{"name":"shanghai", "item":"2"},
		{"name":"sichuan", "item":"3"}
	],
	"America":[
		{"name":"aa", "item":"12"},
		{"name":"bb", "item":"2"}
	],
	"Spain":[
		{"name":"cc", "item":"1"},
		{"name":"dd", "item":"23"},
		{"name":"ee", "item":"3"}
	]
};

for (var countryObj in value2)
{
	document.write(countryObj + ":<br />")
	for (var cityObj in value2[countryObj])
	{
		//可以用document.write("  " + value2[countryObj][cityObj].item + "<br />");
		document.write(cityObj + "  " + value2[countryObj][cityObj]["name"] + "<br />" );
	}
}

解释:

countryObj 为value2对象的属性名,value2[countryObj] 为value2对象属性值 在本例中它是一个数组,cityObj 是数组的一个元素,它又是另外一个json对象,于是,value2[countryObj][cityObj]["name"]就访问到该对象的 name的属性值,也可以通过 value2[countryObj][cityObj].name 来访问该属性值。

Part 4

var value2 = {
	"china":[
		{"name":"hangzhou", "item":"1"},
		{"name":"shanghai", "item":"2"},
		{"name":"sichuan", "item":"3"}
	],
	"America":[
		{"name":"aa", "item":"12"},
		{"name":"bb", "item":"2"}
	],
	"Spain":[
		{"name":"cc", "item":"1"},
		{"name":"dd", "item":"23"},
		{"name":"ee", "item":"3"}
	]
};

	for (var countryObj in value2)
	{
		document.write(countryObj + ":<br />")
		//document.write("  " + value2[countryObj].length);
		for (var i = 0;i < value2[countryObj].length; i++)
		{
			document.write("  " + value2[countryObj][i]["name"] + "<br />");
		}
	}

解释:

countryObj value2对象的属性名,value2[countryObj] 属性值 本例中是一个数组,value2[countryObj].length 数组的长度,value2[countryObj][i]数组的项 == json对象。

value2[countryObj][i]["name"] 取得name的值,也可以用value2[countryObj][i].name 来取得name的值。

时间: 2024-08-23 16:20:14

收集json解析的四种方法的相关文章

IOS中Json解析的四种方法

作为一种轻量级的数据交换格式,json正在逐步取代xml,成为网络数据的通用格式. 有的json代码格式比较混乱,可以使用此“http://www.bejson.com/”网站来进行JSON格式化校验(点击打开链接).此网站不仅可以检测Json代码中的错误,而且可以以视图形式显示json中的数据内容,很是方便. 从IOS5开始,APPLE提供了对json的原生支持(NSJSONSerialization),但是为了兼容以前的ios版本,可以使用第三方库来解析Json. 本文将介绍TouchJso

【转】IOS中Json解析的四种方法

原文网址:http://blog.csdn.net/enuola/article/details/7903632 作为一种轻量级的数据交换格式,json正在逐步取代xml,成为网络数据的通用格式. 有的json代码格式比较混乱,可以使用此“http://www.bejson.com/”网站来进行JSON格式化校验(点击打开链接).此网站不仅可以检测Json代码中的错误,而且可以以视图形式显示json中的数据内容,很是方便. 从IOS5开始,APPLE提供了对json的原生支持(NSJSONSer

解析Xml四种方法

关键字:Java解析xml.解析xml四种方法.DOM.SAX.JDOM.DOM4j.XPath [引言] 目前在Java中用于解析XML的技术很多,主流的有DOM.SAX.JDOM.DOM4j,下文主要介绍这4种解析XML文档技术的使用.优缺点及性能测试. 一.[基础知识——扫盲] sax.dom是两种对xml文档进行解析的方法(没有具体实现,只是接口),所以只有它们是无法解析xml文档的:jaxp只是api,它进一步封装了sax.dom两种接口,并且提供了DomcumentBuilderFa

XML解析的四种方法 建议使用demo4j解析 测试可以用

https://www.cnblogs.com/longqingyang/p/5577937.html 4.DOM4J解析  特征: 1.JDOM的一种智能分支,它合并了许多超出基本XML文档表示的功能. 2.它使用接口和抽象基本类方法. 3.具有性能优异.灵活性好.功能强大和极端易用的特点. 4.是一个开放源码的文件 以下是解析代码: public class DOM4JTest { private static ArrayList<Book> bookList = new ArrayLis

关于json解析的几种方法

parse用于从一个字符串中解析出json对象,如 var str = '{"name":"huangxiaojian","age":"23"}' 注意:单引号写在{}外,每个属性名都必须用双引号,否则会抛出异常. JSON.parse(jsonString): 在一个字符串中解析出JSON对象 var str = '[{"href":"baidu.com","text&quo

Java中Xml解析(四种方法)

1.DOM,Document Object Model,基于DOM的XML分析器将XML文档转换成一个对象模型的集合(DOC树),通过对此模型操作实现对XML文档数据的操作,可以在任何时候对XML文档的任何一部分数据进行访问. DOC强制使用树模型来访问XML文档中信息 很灵活,当XML文档较大时对内存需求比较高,而且对结构复杂的DOC树的遍历也很耗时,对机器要求比较高. // step 1: 获得dom解析器工厂(工作的作用是用于创建具体的解析器) DocumentBuilderFactory

IOS开发之——四种方法解析Jason数据(转)

本文将介绍TouchJson. SBJson .JSONKit 和 iOS5所支持的原生的json方法,解析国家气象局API,TouchJson和SBJson需要下载他们的库 TouchJson包下载: http://download.csdn.net/detail/enuola/4523169 SBJson 包下载: http://download.csdn.net/detail/enuola/4523177 JSONKit包下载:http://download.csdn.net/detail

[转]JSon数据解析的四种方式

转至http://blog.csdn.net/enuola/article/details/7903632 作为一种轻量级的数据交换格式,json正在逐步取代xml,成为网络数据的通用格式. 有的json代码格式比较混乱,可以使用此"http://www.bejson.com/"网站来进行JSON格式化校验(点击打开链接).此网站不仅可以检测Json代码中的错误,而且可以以视图形式显示json中的数据内容,很是方便. 从IOS5开始,APPLE提供了对json的原生支持(NSJSONS

Java构造和解析Json数据的两种方法详解一

原文链接:http://www.cnblogs.com/lanxuezaipiao/archive/2013/05/23/3096001.html 在www.json.org上公布了很多Java下的json构造和解析工具,其中org.json和json-lib比较简单,两者使用上差不多但还是有些区别.下面首先介绍用json-lib构造和解析Json数据的方法示例. 用org.son构造和解析Json数据的方法详解请参见我下一篇博文:Java构造和解析Json数据的两种方法详解二 一.介绍 JSO