Javascript 等同于 flash.utils.getTimer?

标签 javascript time

javascript 中是否有一些我可以使用的窗口变量,或者是否有一种方法可以在不使用日期对象的情况下使用计时器来跟踪耗时? flash.utils.getTimer 在此应用程序的 flash 版本中运行良好,我正在尝试将其移植到 javascript。我不能冒更改系统时钟导致安全问题的风险,所以我不想使用 Date 对象。

我有一个服务器时间戳,我想创建一个独立于操作系统时间的计时器来计算当前服务器时间。我将使用这个计算值来允许在服务器时间的窗口期间进行不同的操作。我不担心 javascript 黑客攻击,因为我知道那里没有安全措施,但我想防止临时用户弄乱某些功能的可用性。

谢谢

为澄清而添加:

此项目与现场视频事件有关。实时视频有一个相对于服务器的开始时间,通过另一个网络服务我可以获取服务器时间。我需要做的是独立于用户的本地时间在客户端计算机上维护此服务器时间,以确定直播流何时应在客户端开始和停止。所以问题不在于我存储服务器时间的格式,而在于我如何在不使用日期对象的情况下获取服务器时间时的耗时。

最佳答案

您可以创建自己的计时器对象:

function Timer(init, precision) {
  var start = time = new Date(init || null).valueOf(),
      precision = precision || 100;

  setInterval(function () { time += precision; }, precision);

  this.elapsed = function() { return time - start; };
  this.getDate = function() { return new Date(time); };
}

并使用它:

var t = new Timer();    // default timer
/* ... do things ... */
alert( t.elapsed() );   // a millisecond value
alert( t.getDate() );   // a Date object

使用 init 参数以您喜欢的任何给定日期值启动计时器。

关于Javascript 等同于 flash.utils.getTimer?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8551788/

相关文章:

javascript - Point-n-Click JQuery 选择器生成器?

time - 如果没有内置时钟,计算机是否可以报时?

indexing - Solr:同义词文件不应超过多大的大小?

java - 测量创建和销毁一个简单对象的时间

Java将int值链接到随机生成的代码

php - 如何在 PHP 中设置时间/日期的格式?

javascript - Angular 和链接下拉列表不保存数据

javascript - Angular 中的 ngDefaultControl 是什么?

javascript - 旋转的 HTML 元素 Angular 的 XY 坐标

javascript - 当用户离开页面时使用 redux-saga 保存进度数据