一个变量 Y,随着时间的推移应该接近另一个变量 X



我有一个变量X,它随着时间的推移而增加(每个500ms(。我还有一个具有随机初始值的变量 Y。我有 10 个步骤(每步之间 50 毫秒(,在这些步骤中,Y 应该更接近 X 值但流畅。在最后一步中,我们应该有 Y = X,但流利地超过这 10 个步骤。

我在下面尝试了这段代码,但我离最后一步 Y = X 的目标还很远,我觉得我应该使用一些数学序列,但我不知道该怎么做

// A variable X that is increasing over time (each 500ms)
var x = 10
var intervalX = setInterval(function() {
x += 1;
console.log("x = " + x)
}, 500);
//A variable Y with random intial value,
var y = 231;
var step =0;
var intervalY = setInterval(function() {
var distanceYX = (x - y) / 10
y += distanceYX
console.log("y = " + y)
step++;
if(step==10) {
clearInterval(intervalY)
}
}, 50);

PS : Y 可以高于或低于 X

好吧,它被称为数学序列级数,而不是级数(这是这种序列的部分和(-这可能是术语混淆:)

如果你想让它线性地达到它,它被称为算术序列,如果你想以指数方式达到它,它被称为几何序列。

你知道 A(1((第一个项(,它是 X 你知道 A(n((最后一项(,即 Y 你知道 n - 即 10

您可以将它们代入此处的几何序列或算术序列的公式中。

最新更新