Подтвердить что ты не робот

.day() возвращает неправильный день месяца с Moment.js

Я использую Moment.js для разбора строки и получения дня, месяца и года отдельно:

var date = moment("12-25-1995", "MM-DD-YYYY");
var day = date.day();        

Однако day не 25-это 1. Каков правильный метод API?

4b9b3361

Ответ 1

Правильная функция для использования - .date():

date.date() === 25;

.day() дает вам день недели. Это работает аналогично функциям jaascript .getDate() и .getDay() объекта даты.

Если вы хотите получить месяц и год, вы можете использовать функции .month() и .year().

Ответ 2

Это как получить части даты:

var date = moment("12-25-1995", "MM-DD-YYYY");

if (date.isValid()) {

    day = date.date(); 
    console.log('day ' + day);

    month = date.month() + 1;
    console.log('month ' + month);

    year = date.year(); 
    console.log('year '+ urlDateMoment.year());

} else {
    console.log('Date is not valid! ');
}

Ответ 3

Вы можете использовать moment().format('DD'), чтобы получить день месяца.

var date = moment("12-25-1995", "MM-DD-YYYY").format('DD');