each(callback)
描述#
以每一个匹配的元素作为上下文来执行一个函数。
意味着,每次执行传递进来的函数时,函数中的this关键字都指向一个不同的DOM元素(每次都是一个不同的匹配元素)。而且,在每次执行函数时,都会给函数传递一个表示作为执行环境的元素在匹配的元素集合中所处位置的数字值作为参数(从零开始的整型)。返回 false 将停止循环 (就像在普通的循环中使用 break)。返回 true 跳至下一个循环(就像在普通的循环中使用continue)。
参数#
callback Function
示例#
each处理一维数组:
var arr1 = [ "aaa", "bbb", "ccc" ];
$.each (arr1, function(i,val) {
alert(i);
alert(val);
});
alert (i) 将输出0,1,2
alert (val) 将输出aaa,bbb,c
each处理二维数组 :
var arr2 = [["a", "aa", "aaa"], ["b", "bb", "bbb"], ["c", "cc", "ccc"]]
$.each (arr2, function(i,item) {
alert(i);
alert(item);
});
arr2为一个二维数组,item相当于取这二维数组中的每一个数组。
item[0]相对于取每一个一维数组里的第一个值
alert (i) 将输出为0,1,2,因为这二维数组含有3个数组元素
alert (item) 将输出为 ['a', 'aa', 'aaa'],['b', 'bb', 'bbb'],['c', 'cc', 'ccc']
对此二位数组的处理稍作变更之后 :
var arr = [ ["a", "aa", "aaa"], ["b", "bb", "bbb"], ["c", "cc", "ccc"] ]
$.each (arr, function(i,item) {
$.each (item, function(j,val){
alert(j);
alert(val);
});
});
alert (j) 将输出为0,1,2,0,1,2,0,1,2
alert (val) 将输出为a,aa,aaa,b,bb,bbb,c,cc,ccc
each处理json数据 :
var arr1 = [ one:1, two:2, three:3 ];
$.each (obj, function(key,val) {
alert(key);
alert(val);
});
alert (i) 将输出0,1,2
alert (val) 将输出aaa,bbb,c