JSON教程
JSON遍历
直接在JS里创建JSON数据然后遍历使用
直接在JS里创建JSON数据,然后遍历使用~
创建代码如下:(创建的是JSON对象)
var YearSelect = {};
var Year = 2014;
var DateOption;
for (var i = Year; i < Year + 12; i++) {
DateOption = {'Year':i, 'Month':i-Year+1};
/ alert(DateOption.Year)
YearSelect[i] = DateOption;
}
这里是创建一个JSON对象,包括了年份和月份的数据。
我为什么创建JSON对象,是因为我对JSON对象比较熟悉。php后台返回的也是json对象。
json对象没有length属性~~
所以遍历的话要:
for(var key in YearSelect){
alert(YearSelect[key].Year);
alert(YearSelect[key].Month);
}
这样就可以了~
记住一定要分辨好json的对象和数组~不然就一直是undenfined
js数组如何添加json数据及js数组与json的区别
下面给大家介绍js数组添加json数据的两种方式。
// 第一种方式
personInfo
: [],
for(var i = 0; i < _STAGE.passengerInfoArray.length; i++){
var name = _STAGE.passengerInfoArray[i];
var person = {v:name, text:name};
this.personInfo.push(person);
}
// 第二种方式
var passengerInfo = {};
passengerInfo.psgTypeDesc = psgTypeDesc;
passengerInfo.flightPrice = flightPrice;
_STAGE.passengerInfoArray.push(passengerInfo);
js数组与 json 的区别
一、数组
- 定义一维数组:var s1=new Array(); s1=1,2,3,4或者s10=1,s11=2,s13=3,s14=4; alert(s10); 结果为1;
- 定义二维素组:var s1=new Array(); var s1=[3,1,2,3,4,3,4,5,6,7,8]; alert(s11); 结果为2;
二、定义json对象
- json对象
var status_process = {
" name5" : '闲置期',
"name1" : '播种期',
"name2" : '苗期',
"name3" : '生长期',
"name4" : '采收期'
}
alert(status_process);
结果为:Object:Object;
- json字符串
所谓json字符串,是指该字符串变量的值与json的格式相同,但是不是json对象,比如:
var s1="{";
var s2 = " 'name5' : '闲置期', 'name1' : '播种期','name2' : '苗期','name3' : '生长期','name4' : '采收期'";
var s3="}";
var status_process=s1+s2 +s3;
虽然status_process的值符合json对象的格式,但是它不是对象,只是一个字符串(是拼凑出来的);
将字符串转换为json对象使用函数eval,eval("(" + status_process+ ")");
结论:从后台传入到前台的是json字符串,不是真正的json对象,因此需要使用eval函数转换。
- json对象的使用
var status_process = {
name5 : '闲置期',
name1 : '播种期',
name2 : '苗期',
name3 : '生长期',
name4 : '采收期'
};
alert(status_process["name5"]);
alert(status_process.name5);
两个都为:闲置期
- json二维对象
var status_process = {
name5 : {name3:'空闲闲置期'},
name1 : '播种期',
name2 : '苗期',
name3 : '生长期',
name4 : '采收期'
};
alert(status_process["name5"]["name3"]);
alert(status_process.name5.name3);
结果都为:'空闲闲置期'
JSON遍历相关
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,它基于ECMAScript的一个子集。 JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C、C++、C#、Java、JavaScript、Perl、Python等),易于人阅读和编写,同时也易于机器解析和生成(一般用于提升网络传输速率)。从Web API和服务端编程语言到NoSQL数据库和客户端框架,都有JSON的身影,在不同平台间传递数据方面,JSON已成为XML强有力的替代者。
主页 | http://www.json.org/json-zh.htmljson |
源码 | https://github.com/topics/json |