我有一个随时间(每个500ms)增加的变量X。我也有一个具有随机初始值的变量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
答案 0 :(得分:0)
好吧,这叫做数学上的序列或进行式,而不是序列(这是该序列的部分和)-可能是术语混淆:)< / p>
如果希望它线性地到达 ,则称为算术序列;如果希望指数性地到达它 ,则称为几何序列。
您知道A(1)(第一项),即X 你知道A(n)(最后一项)是Y 你知道n-是10
您可以将它们插入geometric sequence或arithmetic sequence的公式中。