Как получить индекс месяца по названию месяца с помощью даты-библиотека fns

#javascript #date-fns

Вопрос:

Мне нужно получить номер индекса месяца из названия месяца, используя date-fns библиотеку. Раньше я использовал moment.js , это было просто с moment.js

   moment().month('March').format('M'); 
// Month name will be variable and I don't want to use static dictionary to get index number
 

Как добиться того же с помощью date-fns библиотеки? Я думал использовать format(date, 'M'); , но для этого нужна полная дата, и доступно только название месяца.

Пожалуйста, предложите. Спасибо!

Комментарии:

1. Я так не думаю, что на сегодняшний день у fns есть что-то подобное в наличии на данный момент github.com/date-fns/date-fns/blob/master/src/getMonth/index.ts

Ответ №1:

Я думаю, что это то, что вам нужно

Если вы используете библиотеку date-fns

 function getMonthCount(month){
    const result = getMonth(new Date(`${month} 1`)) 1;
}
 

Если вы не хотите использовать какую-либо библиотеку

 function getMonthCount(month){
    const sometime= new Date(`${month} 1`);
    console.log(sometime.getMonth() 1);
}
 

ПРИМЕЧАНИЕ: это вернет месяц в диапазоне [1,12]

Комментарии:

1. новая дата( ${month} 1 ) что здесь 1?

2. то, что я здесь делаю, заключается в том, что я превращаю месяц в дату . новая дата(${месяц} 1) это вернет дату, которая будет первым днем месяца . итак, 1 здесь скажите, что вам нужно в первый день месяца

3. понял, спасибо! это сработало для меня.