JSON遍历方式实例总结

 更新时间:2015年12月07日 15:22:44   作者:fox123871  
这篇文章主要介绍了JSON遍历方式,结合实例形式总结分析了JavaScript操作json实现遍历的常用技巧,并给出了实例总结,需要的朋友可以参考下

本文实例总结了JSON遍历方式。分享给大家供大家参考,具体如下:

第一种:使用for循环

js代码:

function CyclingJson1() { 
 var testJson = '[{ "name": "小强", "age": 16 },{"name":"小明","age":17}]'; 
 testJson = eval("(" + testJson + ")"); 
 for (var i = 0; i < testJson.length; i++) { 
  alert(testJson[i].name); 
 } 
} 

第二种:使用关键字in

js代码:

function CyclingJson2() {
 var testJson = '[{ "name": "小强", "age": 16 },{"name":"小明","age":17}]'; 
 testJson = eval("(" + testJson + ")");
 for (var i in testJson) {
  alert(testJson[i].name);
 }
}

第三种;使用jquery.each()函数

function CyclingJson3() {
 var testJson = '[{ "name": "小强", "age": 16 },{"name":"小明","age":17}]';
 testJson = eval("(" + testJson + ")");
 $.each(testJson, function (i, n) {
  alert(i); //i为索引值
  alert(n.name); //n为遍历的值
 });
}

综合实例:

<script language="javascript" type="text/javascript">
var array = { "a": "abc", "b": [1, 2, 3, 4, 5, 6], "c": 3, "d": { "name": "james", "age": 28},"e":null,"f":true };
var arrayObj = { "a": { "name": "kobe", "age": 34 }, "b": { "name": "lofo", "age": 28} };
//遍历array方式1
for (var x in array) {
 if (typeof array[x] == 'object' && array[x] != null ) {
  for (var y in array[x]) {
   alert("key = " + y + " value = " + array[x][y]);
  }
 } else {
  alert("key = " + x + " value = " + array[x]); // 非array object
 }
}
//遍历array方式2
$.each(array, function(k, v) {
 var a = typeof (v);
 //数组与对象为object类型,其他分别是string与number类型
 //此时的k代表a、b、c、d,v代表对应的值
 if (typeof (v) == "object") {
  //获取数组与对象后,再去遍历这个数组与对象
  $.each(v, function(k1, v1) {
   window.alert("key = " + k1 + " value=" + v1);
  });
 } else {
  window.alert("key = " + k + " value=" + v);
 }
});
//遍历arrayObj方式1
for (var x in arrayObj) {
 for (var key in arrayObj[x]) {
  window.alert("key=" + key + " value=" + arrayObj[x][key]);
 }
}
//遍历arrayObj方式2
$.each(arrayObj, function(key, value) {
 $.each(value, function(k, v) {
  window.alert("key=" + k + " value=" + v);
 });
});
//遍历arrayObj方式3
$.each(arrayObj, function(key, value) {
 window.alert("key=" + key + " valueName=" + value.name + " valueAge=" + value.age);
});
</script>
<script language="javascript" type="text/javascript">
var UserList = [
 { "UserID": 11, "Name": { "FirstName": "Truly", "LastName": "Zhu" }, "Email": "" },
 { "UserID": 12, "Name": { "FirstName": "Jeffrey", "LastName": "Richter" }, "Email": "" },
 { "UserID": 13, "Name": { "FirstName": "Scott", "LastName": "Gu" }, "Email": "" }
]
$.each(UserList, function(k, v) {
 $.each(v, function(k1, v1) {
  if (typeof (v1) == "object") {
   $.each(v1, function(k2, v2) {
    window.alert("key=" + k2 + " value=" + v2);
   });
  } else {
   window.alert("key=" + k1 + " value=" + v1);
  }
 });
});
</script>
<script language="javascript" type="text/javascript">
var userArray = [
 { "UserID": 11, "Name": { "FirstName": "Truly", "LastName": "Zhu" }, "Email": "" },
 { "UserID": 12, "Name": { "FirstName": "Jeffrey", "LastName": "Richter" }, "Email": "" },
 { "UserID": 13, "Name": { "FirstName": "Scott", "LastName": "Gu" }, "Email": "" }
];
for (var i in userArray) {
 for (var k in userArray[i]) {
  if (typeof userArray[i][k] == "object" && userArray[i][k] != null) {
   for (var j in userArray[i][k]) {
    window.alert("key=" + j + "--value=" + userArray[i][k][j]);
   }
  } else {
   window.alert("key=" + k + "--value=" + userArray[i][k]);
  }
 }
}
</script>

希望本文所述对大家JavaScript程序设计有所帮助。

相关文章

  • JavaScript反转数组常用的4种方法

    JavaScript反转数组常用的4种方法

    这篇文章主要给大家介绍了关于JavaScript反转数组常用的4种方法,反转数组可以将数组中的元素顺序颠倒过来,从而达到一些特定的需求,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2023-07-07
  • 前端存储后端响应数据超详细的实现方式和注意事项

    前端存储后端响应数据超详细的实现方式和注意事项

    前端通过多种方式向后端获取数据,下面这篇文章主要介绍了前端存储后端响应数据超详细的实现方式和注意事项,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2025-03-03
  • 小程序与内嵌webview的数据交互方案详解

    小程序与内嵌webview的数据交互方案详解

    这篇文章主要介绍了小程序与内嵌webview的数据交互方案,为实现H5页面到小程序的无缝切换,技术方案包含使用webview交互,特别是低码C端表单页面的处理,需要的朋友可以参考下
    2024-09-09
  • JavaScript中filter的用法实例分析

    JavaScript中filter的用法实例分析

    这篇文章主要介绍了JavaScript中filter的用法,结合实例形式分析了filter的功能、使用方法及相关操作注意事项,需要的朋友可以参考下
    2019-02-02
  • JavaScript Event事件学习第一章 Event介绍

    JavaScript Event事件学习第一章 Event介绍

    Events是每一个JavaScript程序核心。什么是事件处理,它有什么问题和怎样写出跨浏览器的代码,我将在这一章做一个概述。我也会提供一些有精彩的关于事件处理程序的细节的文章。
    2010-02-02
  • 详解webpack分离css单独打包

    详解webpack分离css单独打包

    这篇文章主要介绍了详解webpack分离css单独打包,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-06-06
  • javascript实现的上下无缝滚动效果

    javascript实现的上下无缝滚动效果

    这篇文章主要介绍了javascript实现的上下无缝滚动效果,具有无缝滚动及响应鼠标滑过停止滚动的功能,简便实用,需要的朋友可以参考下
    2016-09-09
  • JavaScript实现多文件下载方法解析

    JavaScript实现多文件下载方法解析

    这篇文章主要介绍了JavaScript实现多文件下载方法解析,文章通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-08-08
  • JavaScript 小型打飞机游戏实现原理说明

    JavaScript 小型打飞机游戏实现原理说明

    这次为大家带来的小游戏是:打飞机。呃。。。我本人就写不出什么惊天大作的游戏的了,只能写写小游戏,代码量小,又可以学习,主要是想法思路,代码量大,估计也没啥人会去研究学习。。。
    2010-10-10
  • JavaScript中几种时间格式之间的简单转换

    JavaScript中几种时间格式之间的简单转换

    近期在练习或写项目时经常会遇到时间格式的转换问题,今天我就来总结一下,这篇文章主要给大家介绍了关于JavaScript中几种时间格式之间的简单转换,需要的朋友可以参考下
    2024-01-01

最新评论