咱们知道遍历普通数组能够使用each来操做,以下javascript
var _mozi=['墨家','墨子','墨翟','兼爱非攻','尚同尚贤']; //本文所用到的数组, 下同 $.each(_mozi,function(key,val){ //回调函数有两个参数,第一个是元素索引,第二个为当前值 alert('_mozi数组中 ,索引 : '+key+' 对应的值为: '+val); });
这样会循环输入数组的元素的key和value。固然后咱们还能够使用 for..in,each更强壮一点。for..in也能够遍历数组,并返回对应索引,但值是须要经过arrName[key]来获取。java
JS数组的遍历方法有两种:jquery
第一种:通常的for循环,例如:json
var a = new Array("first", "second", "third") for(var i = 0;i < a.length; i++) { document.write(a[i]+","); }
输出的结果:fitst,second,third数组
第二种:用for...in 这种遍历的方式,例如:函数
var arr = new Array("first", "second", "third") for(var item in arr) { document.write(arr[item]+","); }
输出的结果:fitst,second,thirdthis
js遍历json数组:spa
<script type="text/javascript"> var json = {"options":"[{"text":"王家湾","value":"9"},{"text":"李家湾","value":"10"},{"text":"邵家湾","value":"13"}]"} json = eval(json.options) //注:eval函数接收一个参数s,若是s不是字符串,则直接返回s。不然把s语句当作一段代码执行。若是s语句执行结果是一 //个值,则返回此值,不然返回undefined。 for(var i=0; i<json.length; i++) { alert(json[i].text+" " + json[i].value) } </script>
那么jquery怎么实现呢:.net
<script type="text/javascript"> var d1 =[{"text":"王家湾","value":"9"},{"text":"李家湾","value":"10"},{"text":"邵家湾","value":"13"}]; $(d1).each(function(){ alert(this.text+" "+this.value); }); </script>