格式时间(小时和分钟)的循环值

时间:2016-10-27 03:22:50

标签: javascript loops

如何在JavaScript中使用for循环显示值?

例如:如果我循环编号0< 2然后我得到这样的结果:

0
1

我的问题是如何制作这样的循环:

0:0
0:1
0:2
0:3
0:4
to
0:59 
1:0
1:1
1:2
1:3
1:4
to
1:59

因为最后一个循环是1,我如何制作+1所以最后一个循环结果如下:

    0:0
    0:1
    0:2
    0:3
    0:4
    to
    0:59 
    1:0
    1:1
    1:2
    1:3
    1:4
    to
    1:59
    2:0

谢谢

1 个答案:

答案 0 :(得分:0)

至少有两种方法可以做到这一点。

也许最容易的是有两个嵌套循环,一个用于分钟,一个用于第二个,沿着以下伪代码的行:

for minutes = 0 to 59 inclusive:
    for seconds = 0 to 59 inclusive:
        output minutes ":" seconds

当你移动到几小时和几天时,这不一定能很好地扩展,这意味着你必须在一个分钟边界上工作。换句话说,你不能轻易做752秒(12m32s),除非你做一些怪物,如:

for minutes = 0 to 11 inclusive:
    for seconds = 0 to 59 inclusive:
        output minutes ":" seconds
for seconds = 0 to 32 inclusive:
    output "12:" seconds

也许更好的方法,可以减轻这些问题,使用完全秒,翻译即可实现更完整的单位:

for fullsecs = 0 to 752 inclusive:
    secsleft = fullsecs

    seconds = fullsecs % 60
    secsleft = secsleft - seconds

    minutes = (secsleft / 60) % 60
    secsleft = secsleft - minutes * 60

    hours = (secsleft / 3600) % 24
    secsleft = secsleft - hours * 3600

    days = secsleft / 86400

    output days ":" hours ":" minutes ":" seconds

循环中的代码片段是去掉“奇数”秒(那些不是一分钟的倍数),然后从值中减去这些秒,以便结果 一分钟的倍数。

然后,对于其他单位,一直到几天,使用一分钟60秒,一小时60 * 60 = 3600和{{1}这一事实一天之内。