【发布时间】:2021-09-15 03:49:24
【问题描述】:
当我使用 1 以外的不同迭代步数时如何匹配值?
请看下面的例子。因为 5 是速度,所以我按 5 进行交互。
但是,当我接近 53 时如何停止。如何检测并停止从超过 53 的开始并使其达到 53?
var start=0;
var value_to_reach=53;
var increment_speed=5;
while(true) {
if(start>value_to_reach)
{
start-=increment_speed
} else { start+=increment_speed }
if (start==value_to_reach) {
console.log("reached :" + value_to_reach); //Obviously this will never happen with the increment being +5."
}
if (start>54)
{
console.log("Let's break this loop for the sake of stopping this infinite loop. But we couldn't achieve what we want. Not reached " + value_to_reach);
break;
}
}
【问题讨论】:
-
你觉得
valuetoreach - i怎么样?这是一个你有信心的数学运算吗? -
我需要从 0 开始一直递增,直到我需要的值,但我不能递增 1。我不能使用 valuetoreach-1,因为我需要从 0 动画到valuetoreach 但步数不能是 1 或要达到的数字的倍数。
-
@Andy 感谢您的提示。自从我使用 SO 以来已经有一段时间了。我将提供一个可重现的示例。
-
现在添加了一个最小可重现示例。
-
您最近的编辑没有任何意义。如果您高于
value_to_reach,为什么要减少计数器?保证会以无限循环结束...
标签: javascript increment