Arrays 自动用for循环填充my(time value)数组,不';t向上一个数组添加值-ASP CLASSIC

Arrays 自动用for循环填充my(time value)数组,不';t向上一个数组添加值-ASP CLASSIC,arrays,for-loop,asp-classic,Arrays,For Loop,Asp Classic,我正在编写一个函数,在其中我可以用一些值填充数组。我想填充它们,因为数组太大了,我自己就可以填充 数组是一组时间值,用户可以从中选择下拉列表(选择)。默认值应为7:30(欧洲时间),可选择的日期的步长应为15分钟。最低选择时间为5:00,最高选择时间为23:00,总共18小时。15分钟的步骤意味着:18小时x 60分钟=1080分钟/15分钟=72个15分钟的步骤。因此,总共有71个数组值(也包括0) 现在我算出的函数如下: Dim myArray ReDim myArray(5) Dim

我正在编写一个函数,在其中我可以用一些值填充数组。我想填充它们,因为数组太大了,我自己就可以填充

数组是一组时间值,用户可以从中选择下拉列表(选择)。默认值应为7:30(欧洲时间),可选择的日期的步长应为15分钟。最低选择时间为5:00,最高选择时间为23:00,总共18小时。15分钟的步骤意味着:18小时x 60分钟=1080分钟/15分钟=72个15分钟的步骤。因此,总共有71个数组值(也包括0)

现在我算出的函数如下:

Dim myArray

ReDim myArray(5)

Dim counter

For counter = 0 To UBound(myArray)
     if counter = 0 then 
        myArray(counter) = Hour("05:00")
    else
        myArray(counter) = DateAdd("n",15,myArray(counter))
    end if 
Next

For Each item In myArray 
    Response.Write(item & "<br />")
Next 

我相信在你的循环中有一个简单的bug

这条线

myArray(counter) = DateAdd("n",15,myArray(counter))
应该是

myArray(counter) = DateAdd("n",15,myArray(counter - 1))

我想就这些了。

好吧,我自己想出来的。 现在,我通过将值添加到一个变量中,该变量在每个循环中都会更改为一个新的(添加的15分钟)值。这样,它会将15分钟添加到最新值

代码:

Dim myArray

ReDim myArray(5)

Dim counter
Dim BeginTijdArray 

BeginTijdArray = Hour("05:00") & ":" & Minute("05:00")

For counter = 0 To UBound(myArray)
     if counter = 0 then 
        myArray(counter) = BeginTijdArray
    else 
        myArray(counter) = DateAdd("n",15,BeginTijdArray)
        myArray(counter) = Hour(myArray(counter)) & ":" & Minute(myArray(counter))
        BeginTijdArray = myArray(counter)
    end if 
Next

For Each item In myArray 
    Response.Write(item & "<br />")
Next 
Dim myArray
ReDim myArray(5)
暗色计数器
Dim BeginTijdArray
BeginTijdArray=Hour(“05:00”)&“&Minute(“05:00”)
对于计数器=0到UBound(myArray)
如果计数器=0,则
myArray(计数器)=BegintJDArray
其他的
myArray(计数器)=日期添加(“n”,15,BegintJDArray)
myArray(计数器)=小时(myArray(计数器))&“&分钟(myArray(计数器))
BeginTijdArray=myArray(计数器)
如果结束
下一个
对于myArray中的每个项目
响应。写入(项目&“
”) 下一个
不太管用。它添加了15分钟,但不是从开始时间(05:00)算起,还添加了前面的整个日期,以便重新计算。。现在的输出是:
54-1-1900 00:15:00 4-1-1900 00:30:00 4-1-1900 00:45:00 4-1-1900 01:00 4-1-1900 01:15:00
所以先是5,然后是4-1-1900 00:15,从这里开始添加..添加
myArray(counter)=Hour(myArray(counter))&“&Minute(myArray(counter))
部分帮助,删除整个日期(年、月)但仍然没有解决从5开始不计数的问题。
myArray(counter) = DateAdd("n",15,myArray(counter - 1))
Dim myArray

ReDim myArray(5)

Dim counter
Dim BeginTijdArray 

BeginTijdArray = Hour("05:00") & ":" & Minute("05:00")

For counter = 0 To UBound(myArray)
     if counter = 0 then 
        myArray(counter) = BeginTijdArray
    else 
        myArray(counter) = DateAdd("n",15,BeginTijdArray)
        myArray(counter) = Hour(myArray(counter)) & ":" & Minute(myArray(counter))
        BeginTijdArray = myArray(counter)
    end if 
Next

For Each item In myArray 
    Response.Write(item & "<br />")
Next