1. ホーム
  2. javascript

[解決済み] moment.js のオブジェクト時間を直近の 30 分に丸める

2023-05-30 17:11:07

質問

moment.jsのtimeオブジェクトを30分単位で丸めようとしています。しかし、私のロジックは間違っているように見えます。

10:13am -> 10:30am
11:45am -> 12:00pm

以下は私の現在のコードです。

start = moment();
minuteReminder = start.minute() % 30;
start.add(minuteReminder, 'minutes');
start.format("D YYYY, h:mm:ss a");

どのように解決するのですか?

2021年版を編集する。 最も簡単な解決策

const start = moment('2018-12-08 09:42');
const remainder = 30 - (start.minute() % 30);
 
const dateTime = moment(start).add(remainder, "minutes").format("DD.MM.YYYY, h:mm:ss a");

console.log(dateTime);
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.20.1/moment.min.js"></script>

この方法はいくらでもあります。本当にmoment.jsは必要ありません。とにかく、ここに1つあります。