繁体   English   中英

数字秒表

[英]Digital Stop Watch

HII,

我的输入时间以毫秒为单位。 我想在我的应用程序中包括一个数字秒表。即,时间将动态变化,就像每秒钟的数字时钟一样。

您可以将毫秒除以1000得到秒,然后除以60得到分钟,再除以60得到小时。 或者,甚至更好,使用模:

hours = parseInt(milliseconds / 3600) % 24;
minutes = parseInt(milliseconds / 60) % 60;
seconds = (milliseconds / 1000) % 60;

但是,如果您想要一个类似于02:00 PM的时间,则必须知道从什么时候开始计算毫秒(即,当毫秒为“ 0”时是几点)。

前缀milli为10 ^ -3。 因此,一毫秒等于千分之一秒,六万分之一分钟和三十六万分之一小时。 因此,1,000毫秒是一秒,60,000毫秒是一分钟,3,600,000毫秒是一小时。

这意味着,将毫秒数乘以1000,就可以得到秒数,将数字乘以60,000,就可以得到分钟数,而将3,600,000乘以小时可以得到小时数。

我不确定您的问题到底是什么,因为您需要帮助哪些特定部分。 即使您对Javascript不太熟悉,通过除以每个递增因子并取余数,也可以很“轻松地”手动进行此操作,例如:

var input = ...; // your input time

var millis = input % 1000;
input /= 1000;

var seconds = input % 60;
input /= 60;

var minutes = input % 60;
input /= 60;

var hours = input % 24; // I presume this will be less than 24 anyway)

var entireTime = hours + ':' + minutes + ':' + seconds;

一种替代方法是创建一个Date对象,将输入时间传递给构造函数。 这将代表经过纪元的毫秒数,因此打印出其值将包括给定的时间。 根据可用的日期格式设置框架,这可能是一种更简单的方法-当然可以在操作值方面提供更大的灵活性。

只是想一想-确保您完全了解实际输入的内容。 以毫秒为单位的输入时间相对来说并不常见; 我希望这样的输入实际上是一个持续时间 坦白地说,这可能是经过午夜的毫秒数,但是请确保这不是经过其他任意起点的毫秒数。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM