(網路文章轉貼)
For Each x In A 可以= for Each 小孩 in 媽媽 (很爛的例子)
其中 的中文解讀為:
開始生小孩了 , 媽媽(A) 生了一群小孩(x), 一個一個的生(for each)
所以..........
媽媽的生第一個小孩名叫 0 ( A(0)=0 )
媽媽的生第二個小孩名叫 16 ( A(1)=16 )
但是您在生產的過程中
For Each x In A
Response.Write A(x)&"=" & x & "<BR>"
把孩子生亂了.......生第二個變成 A(16)
就是媽媽可以直接跳過順序, 直接生第16個, 名字也不叫 16
出錯的原因可能就因此發生了, 至於為什麼,
就要問他爸爸 (設計這個程式邏輯的人) 了.
通常這個人不太負責任 (只負責賺錢).....
================================
For Each...In...Next 不是將語句運行指定的次數,而是對於數組中的每個元素或對象集合中的每一項重複一組語句。這在不知道集合中元素的數目時非常有用。它的語法如下:
For Each element In group
[statements]
[Exit For]
[statements]
Next [element]
如果 group 中有至少一個元素,就會進入 For Each 塊執行。一旦進入循環,便首先對 group 中第一個元素執行循環中的所有語句。只要 group 中還有其他的元素,就會對每個元素執行循環中的語句。當 group 中沒有其他元素時退出循環。
下面示例輸出所有從客戶端表單提交的參數名為hobby的值:
<%
For Each Value In Request.Form("hobby")
Response.Write Value & "<br>"
Next
%>
下面示例輸出所有從客戶端表單提交的各個參數的值:
<%
For Each Name In Request.Form
Response.Write Request.Form(Name) & "<br>"
Next
%>
Response.Write i&"=" & A(i) & "<BR>"
Next