jquery的$().each,$.each的区别

看同事的代码,

jQuery.ajax({
			url : '${pageContext.request.contextPath}/zkregister/getBkds.htm',
			type : 'POST',
			success : function (data) {
				$("#bkds").empty().append('<option value="">--选择报考地市--</option>');
				//循环
				$(data).each(function (index, obj) {
					if(bkds==obj.CODE){
						$("#bkds").append('<option value="'+obj.CODE+'" selected="selected">'+obj.NAME+'</option>');
					}else{
						$("#bkds").append('<option value="'+obj.CODE+'">'+obj.NAME+'</option>');
					}
				});
			},
			error : function () {
				alert('获取报考地市信息失败!');
			}
		});

发现了个
$(data).each(function (index, obj) {}
这里是用来做循环处理的


与是去网上搜了搜javaScript的循环 两种

1.$(selector).each(function(index,element))

2.$.each(dataresource,function(index,element))

接下来就对这两个函数做深入的探讨:

1.$(selector).each(function(index,element))

作用:在dom处理上面用的较多

示例

html部分文档

<ul id="each_id">
<li>Coffee</li>
<li>Soda</li>
<li>Milk</li>
</ul>

js遍历函数:

function traversalDOM(){
$("#each_id li").each(function(){
      alert($(this).text())
    });
}

输出结果:

2.$.each(dataresource,function(index,element))

作用:在数据处理上用的比较多

示例:

此处没有html代码,只有js代码,如下:

function traversalData(){
var jsonResourceList = '[{"id":"1","tagName":"apple"},{"id":"2","tagName":"orange"},{"id":"3","tagName":"banana"},{"id":"4","tagName":"watermelon"}]';
if(jsonResourceList.length >0){
$.each(JSON.parse(jsonResourceList), function(index, obj) {
    alert(obj.tagName);
});
}
}

输出结果:

3.最终结论:

在遍历DOM时,通常用$(selector).each(function(index,element))函数; 因为它有个选择器。

在遍历数据时,通常用$.each(dataresource,function(index,element))函数;

each处理一维数组
var arr1 = [ “aaa”, “bbb”, “ccc” ];
$.each(arr1, function(i,val){
alert(i);
alert(val);
});
alert(i)将输出0,1,2
alert(val)将输出aaa,bbb,ccc


each处理json数据,这个each就有更厉害了,能循环每一个属性
  var obj = { one:1, two:2, three:3};
  each(obj, function(key, val) {
  alert(key);
  alert(val);
  });
这里alert(key)将输出one two three
alert(val)将输出one,1,two,2,three,3
这边为何key不是数字而是属性呢,因为json格式内是一组无序的属性-值,既然无序,又何来数字呢。
而这个val等同于obj[key]



原文地址:http://blog.csdn.net/zjh_1110120/article/details/50550108


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值