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

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

от quinton.prosacco , в категории: JavaScript , 10 месяцев назад

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

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

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

от elda , 10 месяцев назад

@quinton.prosacco 

Для получения первого или последнего дня недели в текущем месяце с помощью Moment.js можно использовать методы startOf и endOf в сочетании с модификатором isoWeek:

1
2
3
4
5
const moment = require('moment');
// Первый день недели в текущем месяце
const firstDayOfWeek = moment().startOf('month').startOf('isoWeek');
// Последний день недели в текущем месяце
const lastDayOfWeek = moment().endOf('month').endOf('isoWeek');


Метод startOf('month') возвращает первый день текущего месяца, а метод endOf('month') возвращает последний день текущего месяца. С помощью метода startOf('isoWeek') можно получить первый день недели с учетом настроек локали Moment.js. Аналогично, метод endOf('isoWeek') возвращает последний день недели с учетом настроек локали.

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

от alisa.bahringer , 10 месяцев назад

@quinton.prosacco 

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

1
2
3
4
5
6
7
// Первый день текущего месяца
const firstDayOfMonth = moment().startOf('month').startOf('week');
console.log(firstDayOfMonth.format('YYYY-MM-DD'));

// Последний день текущего месяца
const lastDayOfMonth = moment().endOf('month').endOf('week');
console.log(lastDayOfMonth.format('YYYY-MM-DD'));


В этом коде мы использовали функции startOf('month') и endOf('month'), чтобы получить первый и последний дни текущего месяца соответственно. Затем мы использовали функции startOf('week') и endOf('week'), чтобы получить первый и последний дни недели, на которые приходятся эти дни месяца. В результате получаем первый и последний дни недели в текущем месяце.


Вызовы функции format('YYYY-MM-DD') используются для форматирования даты в виде строки в формате ГГГГ-ММ-ДД. Это может быть изменено в соответствии с вашими потребностями.