客户问:
......我们公司拖沙,到目前为止,我们已经拖了17亿美元 磅和计数。我希望有一个柜台;它需要 连续计数,而不是恢复到原来的数字后 页面刷新。我需要计数器从17亿开始 磅,每秒增加154磅。
是否需要数据源,或者这样的计算是否与时间挂钩? (例如:当前服务器时间)
我假设可能需要锁定当前的实际值,因此需要每周/每月调整计算以反映真实情况。但它真的只是SAND(不是火箭科学)。
答案 0 :(得分:0)
我认为您的服务器上需要3件事:
然后使用这3个你可以随时计算价值。
如果你想要
因此需要每周/每月调整计算以反映真实情况。
您可以在某些管理界面上为其设置可自定义的属性。您甚至可以让用户输入新的日期和值,并使用与先前值的差异来计算速度。但是仍然有必要为用户提供一些UI以覆盖速度,以防出现错误。
现在回到主营业务。为了使其或多或少可靠,我将分两步进行计算:首先在服务器端,然后在客户端。首先在服务器端,您将当前值计算为:
initial_value_for_client = initial_value + speed * (current_time - initial_time)
并将其与speed
一起放入页面JS中。然后在客户端使用简单的setInterval
将speed
添加到initial_value_for_client
并更新HTML。通过两步完成,您不依赖于客户端时区。您的价值只有在下载页面并开始执行时才会出错,而且不应该太多。
答案 1 :(得分:0)
很容易。
var startDate = new Date("2017-03-01T01:10:00");
var vStart =1700000000
var vPerSec = 151
setInterval(function(){
var timeDiffSec = (new Date.getTime()-startDate.getTime())/1000
var vCur = vStart +( timeDiffSec * vPerSec);
},1000);
document.write(vCur);