ach()用來遍歷每個元素並作出相應的處理,下面是簡單的實現:
方法一(直接函式呼叫):
**如下
複製**
function each(obj,fn);
console.log('===function===');
each(arry,function(index));
each(user,function(key)else
}});
執行結果:
===function===
0 => 1
1 => 2
2 => 3
3 => 4
4 => 5
name => 念在三角湖畔
site =>
addr => 湖北武漢
age => 22
each => function [function]
方法二(原型擴充套件):
**如下
複製**
function _each(fn));
user.each(function(key)else
}});
執行結果:
===array.prototype|object.prototype===
0 => 1
1 => 2
2 => 3
3 => 4
4 => 5
name => 念在三角湖畔
site =>
addr => 湖北武漢
age => 22
each => function [function]
最後我還是給大家建義一下其實我們可以直接使用jquery就能幫助我們完成了,並不需要寫如此多的**了,如
each處理一維陣列
**如下
複製**
var arr1 = [ "aaa", "bbb", "ccc" ];
$.each(arr1, function(i,val));
alert(i)將輸出0,1,2
alert(val)將輸出aaa,bbb,ccc
each處理二維陣列
**如下
複製**
var arr2 = [['a', 'aa', 'aaa'], ['b', 'bb', 'bbb'], ['c', 'cc', 'ccc']]
$.each(arr, function(i, 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));
});
alert(j)將輸出為0,1,2,0,1,2,0,1,2
alert(val)將輸出為a,aa,aaa,b,bb,bbb,c,cc,ccc
each處理json資料,這個each就有更厲害了,能迴圈每乙個屬性
**如下
複製**
var obj = ;
each(obj, function(key, val) );
這裡alert(key)將輸出one two three
alert(val)將輸出one,1,two,2,three,3
這邊為何key不是數字而是屬性呢,因為json格式內是一組無序的屬性-值,既然無序,又何來數字呢。
而這個val等同於obj[key]
使用起來非常的方便並且jquery each相容性也要強很多哦。
each和 each 的區別
在jquery中,遍歷物件和陣列,經常會用到 each和 each 兩個方法。兩個方法是有區別的,從而這兩個方法在針對不同的操作上,顯示了各自的特點。each,對於這個方法,在dom處理上面用的較多。如果頁面有多個input標籤型別為checkbox,對於這時用 each來處理多個checkbook...
jQuery中each的用法
each函式根據引數的型別實現的效果不完全一致 1 遍歷物件 有附加引數 each object,function p1,p2 引數1 引數2 2 遍歷陣列 有附件引數 each array,function p1,p2 引數1 引數2 3 遍歷物件 沒有附加引數 each object,funct...
scss中的 each 指令
each的作用 迴圈乙個list 或者乙個map 示例一 迴圈乙個list 類名為 icon 20px icon 22px icon 24px寫他們的字型大小寫法就可以如下 sizes 20px,22px,24px each size in sizes 示例二 迴圈乙個map 類名為icon pri...