2010-03-13 150 views
0
$.each(3,function(i){ 
    alert(i) 
    }) 

警報0,1,2可以jquery這樣做嗎?

如何做到這一點使用jQuery?

感謝

+0

和你是神! – zjm1126 2010-03-13 07:03:09

+0

無論答案如何,我都覺得這是一個很好的例子,「僅僅因爲你可以不意味着你應該」。 – 2010-03-13 07:18:53

+0

你也可以用邏輯電路來做到這一點,但更好的做法是使用純js。 – Sinan 2010-03-13 15:35:56

回答

3

$。每次遍歷數組或對象,所以你想使一個數組...

$.each([0,1,2],function(i){alert(i);}); 

編輯:如果你想有一個功能,使該陣列你,達到最大數量,這裏有一種方法:

max=5; 

$.each(
    (function(){ i=0,f=[]; while(i<max){ f.push(i);i++; } return f;})(), 
    function(i){ alert(i); } 
); 
6

這是另一種類型的例子的問題?如果沒有,爲什麼不使用一個簡單的舊無聊的JavaScript循環?

for(var i=0; i<3; i++) { 
    alert(i); 
} 

我錯過了什麼?

1

你怎麼樣定義自己的each

jQuery.extend({ 
    eachIter: function(to,callback){ 
     for(var i=0;i<to;i++){ 
      callback(i); 
     } 
    } 
}); 

然後,你可以把它作爲你說:

$.eachIter(3,function(i){alert(i);}); 
+0

您應該將'i'變量傳遞給回調函數,而不是'to'變量,否則它會提醒3次,3次。 – CMS 2010-03-13 07:06:30