Я хочу розібрати наступний рядок з moment.js 2014-02-27T10 : 00: 00 та вихідний день місяць рік (14 березня 2014 р.) Я читав документи, але без успіху http://momentjs.com/docs/# / розбір / зараз /
Я хочу розібрати наступний рядок з moment.js 2014-02-27T10 : 00: 00 та вихідний день місяць рік (14 березня 2014 р.) Я читав документи, але без успіху http://momentjs.com/docs/# / розбір / зараз /
Відповіді:
Вам потрібно скористатися .format()
функцією.
MM
- число місяця
MMM
- Слово місяця
var date = moment("2014-02-27T10:00:00").format('DD-MM-YYYY');
var dateMonthAsWord = moment("2014-02-27T10:00:00").format('DD-MMM-YYYY');
"01-02-2017"
, "2 січня" або "1 лютого"? Momentjs не може прочитати вашу думку.
Мені завжди здається, що я тут висаджуюсь лише для того, щоб усвідомити, що назва та питання не зовсім узгоджуються.
Якщо ви хочете миттєву дату з рядка :
const myMoment = moment(str, 'YYYY-MM-DD')
Замість зміни власного Date.prototype, Moment.js створює обгортку для об'єкта Date.
Якщо замість цього ви хочете об'єкт дати JavaScript від рядка :
const myDate = moment(str, 'YYYY-MM-DD').toDate();
Не потрібно для moment.js для аналізу даних, оскільки її формат є стандартним:
var date = new Date('2014-02-27T10:00:00');
var formatted = moment(date).format('D MMMM YYYY');
NaN
.
Date.parse
дзвонить new Date
, тому це не повинно впливати.
Момент був ідеальним для того, що мені потрібно. ПРИМІТКА, він ігнорує години та хвилини і просто робить це, якщо ви дозволите. Це було ідеально для мене, оскільки мій виклик API повертає дату та час, але я дбаю лише про дату.
function momentTest() {
var varDate = "2018-01-19 18:05:01.423";
var myDate = moment(varDate,"YYYY-MM-DD").format("DD-MM-YYYY");
var todayDate = moment().format("DD-MM-YYYY");
var yesterdayDate = moment().subtract(1, 'days').format("DD-MM-YYYY");
var tomorrowDate = moment().add(1, 'days').format("DD-MM-YYYY");
alert(todayDate);
if (myDate == todayDate) {
alert("date is today");
} else if (myDate == yesterdayDate) {
alert("date is yesterday");
} else if (myDate == tomorrowDate) {
alert("date is tomorrow");
} else {
alert("It's not today, tomorrow or yesterday!");
}
}
Можливо, спробуйте поліфункцію Intl для IE8 або послугу olyfill?
або
let startDate = "2019-01-16T20:00:00.000";
let endDate = "2019-02-11T20:00:00.000";
let sDate = new Date(startDate);
let eDate = new Date(endDate);
startDate = moment(sDate);
endDate = moment(eDate);
var date = moment("2014-02-27T10:00:00").format('DD-MM-YYYY'); var dateCalendarPart = moment(date).format('YYYY/MM/DD'); alert(date); alert(dateCalendarPart);
Подає помилкову помилку дати ?????