javascript - 获取超出时间范围的等距时间戳数组
问题描述
我有两个时间戳
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'
]
解决方案
也许这个片段回答了你的问题。您可以找到以毫秒为单位的步长,并根据时间戳创建 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);
}
推荐阅读
- javascript - Jquery ajax 异步加载
- postgresql - 使用辅助字段排序,开始和结束
- c# - 从图像中裁剪矩形并打印并保存
- angular - 量角器无法找到元素和脚本超时
- c - 无法绕过 gcc 的 -Wconversion
- vba - 无处不在的连接 AutoCad VBA
- angular - 使用量角器定位元素时出错 - 失败:脚本超时:20 秒内未收到结果
- xml - 无法用 PowerShell 替换 XML 中的 URL
- c - 尝试解决在 C 中连接字符串的问题
- flask - Flask 应用程序无法向 Google Cloud Compute 实例外部 IP 打开服务器