$.each(arr1,function( i,item ){
alert( item[0] );
})
作用是显示二维数组每个子元素的第一项
function(i , item )
(1)
注意这里虽然没用到i,但是系统会默认认为第一个子元素的索引,索引命名为i还是index或者num都无所谓,只要是第一个位置的参数都被认为是索引或者序列号。所以我们虽然只会用到item,但是如果不写i,那么item会被误会认为是index,那就不好乐。
参数的命名取任何名字都可以,但需要位置正确,因为是靠arguments[0]来提取第一个参数为序列号的。
(2)
item指向this,即当前的每一项子元素。注意是dom的this,而非$(this)
所以
$.each(arr1,function(i,item){
alert(item==this);
})
会连续弹出3个true。
(3)
返回dom元素,而非jquery对象
<div id="ds">1</div>
<div>2</div>
<div>3</div>
<div>4</div>
<script>
$("div").each(function(i,item){
$item=jQuery(item);
$item.attr("id","ss");
})
</script>
因为item返回的是dom元素,而非jquery对象,所以item是不能直接用jQuery定义的方法的,所以要进行转换。
于是就可以用attr()方法为每个子元素设置属性啦。当然:
$item.attr("id","ss")等价于item.id="ss"
(4)
$("div").each(function(i,item){
$item=jQuery(item);
alert($item.text( ));
})
相当于
$.each( $("div"),function( i,item ){
$item=jQuery(item);
alert($item.text( ));
})