2008-04-13
JSON个人学习总结
其实,JSON也不是什么新技术,它很早就出现在JavaScript的标准中。它是一个较轻量级别的一个数据交换格式,便于阅读和编写,是一种与变成语言无关的一个文本格式。
它有两个基本特征:
1:“名称/值”对的集合。即一个名称对应一个值,其中值是可以为空的(null)。
2:值的有序列表,其实也可以认为是一个数组(Array)
下面是我写的一些示例,同时也写了怎么去遍历这些JSON中定义的数据。
<script type="text/javascript">
function readJson(){
var d = {
"msg":[
{"user":"jzhua","name":{"first":"jzh","last":"zxx"},"age":"26"},
{"user":"zxx","name":{"first":"jzh2","last":"zxx2"},"age":"25"}
],
"type":[
{"test1":"zzz1"},
{"test2":"zzz2"},
{"test3":"zzz3"}
],
"dx":[
{"name":"jxnu"}
],
"all":"all",
"other":"other"
};
//alert(d.all);
//alert(d.type[0].test1);
//alert(d.msg[0].user);
//alert(d.msg[0].name.first);
//alert(d.msg[1].name.first);
//alert(d.msg.length); //2
//alert(d.all.length); //4(这个为字符串长度)
for(var o in d){
//alert(d[o]);
//alert(d[o][0].length);//这个就是访问msg数组中的数据
//alert(d[o][0].user.length);
//alert(d[o].length);//注意,当该d 中的元素不是数组时,则返回的为该元素的长度
//alert(d[o][0]);
}
//o,i指的都是d这个json中的二元数组中的行数
for(var i in d){
//alert(d[i].msg);
}
var userlist = [
{"Uid":11,"Name":{"FirstName":"Jiang1","LastName":"ZhiHua1"},"Email":"jzhua2008@163.com1"},
{"Uid":12,"Name":{"FirstName":"Jiang2","LastName":"ZhiHua2"},"Email":"jzhua2008@163.com2"},
{"Uid":13,"Name":{"FirstName":"Jiang3","LastName":"ZhiHua3"},"Email":"jzhua2008@163.com3"}
];
//alert(userlist[0].Uid);
//下面是遍历这些数据的示例
//获得d中msg中指定数据内容
for(var i =0;i<d.msg.length;i++){
//alert(d.msg[i].user);//获得msg中所有user内容
//alert(d.msg[i].name.last);//获得msg中所有name.last内容
}
for(var i =0;i<d.dx.length;i++){
//alert(d.dx[i].name);//jxnu
}
for(var i=0;i<userlist.length;i++){
alert(userlist[i].Uid); //11,12,13
}
}
它有两个基本特征:
1:“名称/值”对的集合。即一个名称对应一个值,其中值是可以为空的(null)。
2:值的有序列表,其实也可以认为是一个数组(Array)
下面是我写的一些示例,同时也写了怎么去遍历这些JSON中定义的数据。
<script type="text/javascript">
function readJson(){
var d = {
"msg":[
{"user":"jzhua","name":{"first":"jzh","last":"zxx"},"age":"26"},
{"user":"zxx","name":{"first":"jzh2","last":"zxx2"},"age":"25"}
],
"type":[
{"test1":"zzz1"},
{"test2":"zzz2"},
{"test3":"zzz3"}
],
"dx":[
{"name":"jxnu"}
],
"all":"all",
"other":"other"
};
//alert(d.all);
//alert(d.type[0].test1);
//alert(d.msg[0].user);
//alert(d.msg[0].name.first);
//alert(d.msg[1].name.first);
//alert(d.msg.length); //2
//alert(d.all.length); //4(这个为字符串长度)
for(var o in d){
//alert(d[o]);
//alert(d[o][0].length);//这个就是访问msg数组中的数据
//alert(d[o][0].user.length);
//alert(d[o].length);//注意,当该d 中的元素不是数组时,则返回的为该元素的长度
//alert(d[o][0]);
}
//o,i指的都是d这个json中的二元数组中的行数
for(var i in d){
//alert(d[i].msg);
}
var userlist = [
{"Uid":11,"Name":{"FirstName":"Jiang1","LastName":"ZhiHua1"},"Email":"jzhua2008@163.com1"},
{"Uid":12,"Name":{"FirstName":"Jiang2","LastName":"ZhiHua2"},"Email":"jzhua2008@163.com2"},
{"Uid":13,"Name":{"FirstName":"Jiang3","LastName":"ZhiHua3"},"Email":"jzhua2008@163.com3"}
];
//alert(userlist[0].Uid);
//下面是遍历这些数据的示例
//获得d中msg中指定数据内容
for(var i =0;i<d.msg.length;i++){
//alert(d.msg[i].user);//获得msg中所有user内容
//alert(d.msg[i].name.last);//获得msg中所有name.last内容
}
for(var i =0;i<d.dx.length;i++){
//alert(d.dx[i].name);//jxnu
}
for(var i=0;i<userlist.length;i++){
alert(userlist[i].Uid); //11,12,13
}
}
发表评论
- 浏览: 6979 次
- 性别:

- 来自: 上海

- 详细资料
搜索本博客
我的相册
老婆2
共 7 张
共 7 张
最近加入圈子
最新评论
-
今天要做公司内部的一个Or ...
整理成word文档 下来看看 这样看累的 内容挺好的
-- by antonyup_2006 -
高兴呀!得到华为的录取通 ...
你们也太不了解华为了!一个很好的企业,公司很人性化,还有手把手的导师制度。同时业 ...
-- by jzhua2006 -
高兴呀!得到华为的录取通 ...
2个月了,还没有si?
-- by testlga -
公司不能上网,现在就很少 ...
紧张不?一周多久休息啊
-- by flameanger -
公司不能上网,现在就很少 ...
在哪上班呢?
-- by flameanger






评论排行榜