Как округлить время до ближайшего часа или минуты с помощью Moment.js?

Пользователь

от catherine_wintheiser , в категории: JavaScript , год назад

Как округлить время до ближайшего часа или минуты с помощью Moment.js?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от hattie , год назад

@catherine_wintheiser 

Для округления времени до ближайшего часа или минуты с помощью Moment.js можно использовать следующие методы:

  • Для округления до ближайшего часа можно использовать метод startOf('hour'), который устанавливает время на начало часа. Затем можно использовать метод add(1, 'hour'), чтобы добавить 1 час, если минуты больше или равны 30, или оставить время без изменений в противном случае. Например:
1
2
3
const currentMoment = moment(); // текущий момент времени
const roundedHour = currentMoment.startOf('hour').add(currentMoment.minutes() >= 30 ? 1 : 0, 'hour');
console.log(roundedHour.format('HH:mm')); // форматирование времени в часах и минутах


  • Для округления до ближайшей минуты можно использовать метод startOf('minute'), который устанавливает время на начало минуты. Затем можно использовать метод add(1, 'minute'), чтобы добавить 1 минуту, если секунды больше или равны 30, или оставить время без изменений в противном случае. Например:
1
2
3
const currentMoment = moment(); // текущий момент времени
const roundedMinute = currentMoment.startOf('minute').add(currentMoment.seconds() >= 30 ? 1 : 0, 'minute');
console.log(roundedMinute.format('HH:mm')); // форматирование времени в часах и минутах


Обратите внимание, что в обоих примерах используется метод format('HH:mm') для форматирования времени в формате часов и минут.

Пользователь

от jamey.kohler , год назад

@catherine_wintheiser 

Чтобы округлить время до ближайшего часа или минуты с помощью Moment.js, вы можете использовать методы .startOf() и .endOf().


Чтобы округлить время до ближайшего часа, вы можете использовать следующий код:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
// Импортируйте библиотеку Moment.js
const moment = require('moment');

// Создайте объект Moment с текущим временем
const now = moment();

// Округлите текущее время до ближайшего часа
const roundedHour = now.startOf('hour');

console.log(roundedHour.format('HH:mm')); // Округленное время до ближайшего часа


Чтобы округлить время до ближайшей минуты, вы можете использовать следующий код:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
// Импортируйте библиотеку Moment.js
const moment = require('moment');

// Создайте объект Moment с текущим временем
const now = moment();

// Округлите текущее время до ближайшей минуты
const roundedMinute = now.startOf('minute');

console.log(roundedMinute.format('HH:mm')); // Округленное время до ближайшей минуты


Обратите внимание, что методы .startOf() и .endOf() изменяют исходный объект Moment, округляя его до ближайшего часа или минуты. Вы можете использовать метод .format() для форматирования округленного времени в нужном вам формате.