[javascript] moment.js를 사용하여 문자열을 날짜로 구문 분석

다음 문자열을 moment.js 2014-02-27T10 : 00 : 00 으로 구문 분석하고 월별 출력 (2014 년 3 월 14 일) 문서를 읽었지만 성공하지 못했습니다
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');

깡깡이


답변

나는 항상 제목과 질문이 잘 정렬되어 있지 않다는 것을 깨닫기 위해 여기에 착륙하는 것처럼 보입니다.

문자열에서 순간 날짜 를 원한다면 :

const myMoment = moment(str, 'YYYY-MM-DD')

에서 순간 문서 :

기본 Date.prototype을 수정하는 대신 Moment.js는 Date 객체에 대한 래퍼를 만듭니다.

대신 문자열에서 자바 스크립트 Date 객체를 원한다면 :

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');

http://es5.github.io/#x15.9.1.15


답변

순간은 내가 필요한 것에 완벽했습니다. 참고 시간과 분을 무시하고 허용하면됩니다. 내 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!");
  }
}


답변

어쩌면 IE8에 대한 Intl polyfill 또는 olyfill 서비스를 사용해보십시오.

또는

https://github.com/andyearnshaw/Intl.js/


답변

  • 문자열 날짜를 객체 날짜로 변경하는 방법 (moment.js와 함께) :

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);

  • moment.js로 :

startDate = moment(sDate);
endDate = moment(eDate);


답변