使用循环(for

发表于:2007-06-30来源:作者:点击数: 标签:
使用循环(for…next) 如果你要重复执行一句或一组语句特定的次数,你可以使用for…next循环。下面的for…next循环打印10次Hello World! % for (myvar=0; myvar10; myvar++) % Hello World! for语句包含三部分,第一部分初始化变量,在此例中,新的变量myva

使用循环(for…next)

如果你要重复执行一句或一组语句特定的次数,你可以使用for…next循环。下面的for…next循环打印10次Hello World!

<%

for (myvar=0; myvar<10; myvar++)

%>

Hello World!

for语句包含三部分,第一部分初始化变量,在此例中,新的变量myvar的初始值是0,第二个部分判断某个条件是否为真,这个循环当myvar的值小于10时一直在执行。for语句的最后一部分自增myvar变量。

通常你有一组语句需要在for…next循环中执行,要指定一组语句执行,你要用花括号({})将这些语句包含起来。如下面所示:

<%

for (myvar=0; myvar<10; myvar++)

{

%>

<BR> Hello World!

<BR> How are you today?

<%

}

%>

在此例中,一组HTML语句在浏览器上重复显示10次,注意在这个脚本末尾结束for…next循环的花括号}。

与for…next语句最接近的语句是for…in语句,你可以使用for…in语句来逐个访问数组或对象中的每一个元素。下面的例子说明了这个语句的用法:

<%

myarray=new Array(“John”,“Paul”,“George”,“Ringo”);

for (myvar in myarray)

{

%>

<%=myarray[myvar]%>

<%

}

%>

这个脚本输出名为myarray的数组中的所有元素的值,对数组中的每个元素,都要执行一遍循环体中的语句。

 

 

 

 

使用while循环

如果当某一特定条件为真时你要执行一条或一组语句,那么你可以使用while循环。while循环只有当条件为真时才执行,来看下面的脚本:

<%

function ThePresent()

{

var ThePresentTime=new Date();

return ThePresentTime.getTime();

}

TheFutureTime=new Date();

TheFutureTime.setSeconds(TheFutureTime.getSeconds()+15);

TheFuture=TheFutureTime.getTime();

while (ThePresent()<TheFuture)

{

%>

<BR> Waiting for the future…

<%

}

%>

这个脚本反复在屏幕上显示文本Waiting for the future…达15秒(见图9.4)。紧跟在while语句后的语句组不断执行直到括号中包含的条件为假时才停止。在这种情况下,当现在的时间与启动脚本的时间差在15秒之内时(使用函数不断地刷新当前时间),while循环不断执行。

如果在while语句执行之前,它的条件就是假的,那么while中包括的循环体就不会被执行。也就是说,如果while语句的条件永远都是真的,则循环就会永远地执行下去。

使用while语句时你要小心不要陷入到死循环中去,如果你不小心建立了一个死循环,也不要担心。要有耐心,在一定时间之后脚本会自动终止的(通常是90秒)。

注意

你可以使用服务器对象的ScriptTimeOut属性来控制在时间到达之前一个脚本执行多长时间。你可以从第14章“使用单个ASP”来学习怎样实现这一目的。

 

图9.4 Waiting for the future…

原文转自:http://www.ltesting.net