问题描述
我对F#相当陌生,想尝试进行简单的倒计时;但是,在下面的代码中,它告诉我“ t..0”存在问题。
let countdown x =
let mutable t = 10
for t..0 do
t=t-1
我希望它在终端中从10倒数到0。
解决方法
您的代码段存在三个问题。首先,您不需要在t
循环中递减for
-这会自动发生。其次,如果您希望降低t .. 0
之类的范围,则需要指定-1
作为步骤。另外,您在for
循环中的语法需要定义一个变量(并且您无需在循环外执行此操作):
let countdown x =
for t in 10 .. -1 .. 0 do
printfn "Counting: %d" t
,
Tomas的答案显示了范围语法,但也有命令式语法,类似于for
循环。
for i = 10 downto 1 do
printfn "Counting: %d" i
要计数,请使用for i = 0 to 10
。
试试这个:
var i = 10;
var interval = setInterval( increment,1000);
function increment(){
i = i - 1;
if(i <= -1) {
return
}
console.log(i);
}
细分:
倒计时应该从哪里开始:
var i = 10;
增量间隔:(通常为1000ms)
var interval = setInterval( increment,1000);
实际倒计时:
function increment(){
i = i - 1;
如果计数器变为负数,则停止计数:
if(i <= -1) {
return
}
在控制台日志中写入结果:
}
console.log(i);
}