数组以及JSon数组的遍历

我们知道遍历普通数组可以使用each来操作,如下

var _mozi=['墨家','墨子','墨翟','兼爱非攻','尚同尚贤']; //本文所用到的数组, 下同
$.each(_mozi,function(key,val){
    //回调函数有两个参数,第一个是元素索引,第二个为当前值
    alert('_mozi数组中 ,索引 : '+key+' 对应的值为: '+val);
});

这样会循环输入数组的元素的key和value。当然后我们还可以使用 for..in,each更强壮一点。for..in也可以遍历数组,并返回对应索引,但值是需要通过arrName[key]来获取。

JS数组的遍历方法有两种:

第一种:一般的for循环,例如:

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,third

js遍历json数组:

<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怎么实现呢:

<script type="text/javascript"> 
var d1 =[{"text":"王家湾","value":"9"},{"text":"李家湾","value":"10"},{"text":"邵家湾","value":"13"}]; 
$(d1).each(function(){ 
alert(this.text+" "+this.value); 
}); 
</script>



你可能感兴趣的:(数组以及JSon数组的遍历)