我在兩個紀元之間有一個時間跨度(以秒為單位)。我想要一個回傳該時間跨度內所有午夜的紀元時間(以秒為單位)的函式。
在偽代碼中,我想要這樣的東西:
const epoch_start = 1600000;
const epoch_end = 16040000;
function getMidnights(start, end){
// do your magic
}
console.log(getMidnights(epoch_start, epoch_end));
我希望該函式的回傳看起來像這樣:[1600020, 1600400](這些只是示例值)。
最有效的方法是什么?
我的想法是:獲取范圍內的唯一日期串列并回傳它們的午夜。
uj5u.com熱心網友回復:
您可以按天逐日取整:
const epoch_start = 1600000000;
const epoch_end = 1600400000;
const day = 86400;
function getMidnights(start, end){
midnites = [];
while (start < end) {
midnites.push((start/day .5|0)*day);
start = day;
}
return midnites;
}
console.log(getMidnights(epoch_start, epoch_end))
console.log('* check it *')
console.log(getMidnights(epoch_start, epoch_end).map(t => new Date(t*1e3)));
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/425104.html
標籤:javascript 数组 日期
