首页 > 解决方案 > 获取超出时间范围的等距时间戳数组

问题描述

我有两个时间戳

const start_time = '2020-03-11 17:18:50';
const end_time = '2020-03-11 17:19:45'

如何获得一组时间戳,让我们说 step=50 点,这是 start_time 和 end_time 之间的等距间隔?

它应该看起来像:

[
 '2020-03-11 17:18:50',
 '2020-03-11 17:18:57',
 '2020-03-11 17:19:03',
 '2020-03-11 17:19:10',
 ...,
 '2020-03-11 17:19:45'
]

标签: javascriptreactjs

解决方案


也许这个片段回答了你的问题。您可以找到以毫秒为单位的步长,并根据时间戳创建 Date 对象。

const start_time = '2020-03-11 17:18:50';
const end_time = '2020-03-11 17:19:45';
const steps = 50;

const startTimestamp = new Date(start_time).getTime();
const endTimestamp = new Date(end_time).getTime();
const stepSize = (endTimestamp - startTimestamp) / steps;

for (let i = 1; i < steps; ++i) {
    const stepDate = new Date(startTimestamp + i * stepSize);
    console.log(stepDate);
}


推荐阅读