Program Club

자바 스크립트 형식 날짜 / 시간

proclub 2020. 11. 9. 21:30
반응형

자바 스크립트 형식 날짜 / 시간


이 질문에 이미 답변이 있습니다.

날짜 / 시간을 2014-08-20 15:30:00 에서 2014 년 8 월 20 일 오후 3시 30 분 으로 변경해야합니다.

자바 스크립트의 Date 객체를 사용하여이 작업을 수행 할 수 있습니까?


예, 네이티브 javascript Date () 개체 및 해당 메서드를 사용할 수 있습니다 .

예를 들어 다음과 같은 함수를 만들 수 있습니다.

function formatDate(date) {
  var hours = date.getHours();
  var minutes = date.getMinutes();
  var ampm = hours >= 12 ? 'pm' : 'am';
  hours = hours % 12;
  hours = hours ? hours : 12; // the hour '0' should be '12'
  minutes = minutes < 10 ? '0'+minutes : minutes;
  var strTime = hours + ':' + minutes + ' ' + ampm;
  return date.getMonth()+1 + "/" + date.getDate() + "/" + date.getFullYear() + "  " + strTime;
}

var d = new Date();
var e = formatDate(d);

alert(e);

또한 오전 / 오후 및 정확한 시간을 표시합니다.

더 이상 사용되지 않으므로 getYear ()가 아닌 getFullYear () 메서드 를 사용해야 합니다.

데모 http://jsfiddle.net/a_incarnati/kqo10jLb/4/


바퀴를 재발 명하지 마십시오. 이 문제를 해결하기 위해 이미 존재하는 많은 오픈 소스 및 COTS 솔루션이 있습니다.

다음 JavaScript 라이브러리를 살펴보십시오.


데모

아래 Moment.js를 사용하여 한 줄짜리 글을 썼습니다. 여기에서 데모를 확인할 수 있습니다 : JSFiddle .

moment('2014-08-20 15:30:00').format('MM/DD/YYYY h:mm a'); // 08/20/2014 3:30 pm

날짜 부분의 경우 :( 월은 0 인덱스, 일은 1 인덱스)

var date = new Date('2014-8-20');
console.log((date.getMonth()+1) + '/' + date.getDate() + '/' +  date.getFullYear());

당분간은 다양한 상황을 테스트하고 변환하는 함수를 만들고 싶을 것입니다.


네이티브 Date 개체에 내장 된 메서드를 사용하여 안정적으로 수행 할 수 있다고 생각하지 않습니다. toLocaleString방법은 가까운 얻을 수 있지만, 내가 제대로 기억하고 있다면, 그것은 IE <이 작업의 라이브러리를 사용 할 수있는 경우 (10)가 제대로 작동하지 않습니다 MomentJS는 정말 놀라운 라이브러리입니다; 날짜와 시간을 쉽게 다룰 수 있습니다. 그렇지 않으면 원하는 형식을 제공하기 위해 기본 함수를 작성해야한다고 생각합니다.

function formatDate(date) {
    var year = date.getFullYear(),
        month = date.getMonth() + 1, // months are zero indexed
        day = date.getDate(),
        hour = date.getHours(),
        minute = date.getMinutes(),
        second = date.getSeconds(),
        hourFormatted = hour % 12 || 12, // hour returned in 24 hour format
        minuteFormatted = minute < 10 ? "0" + minute : minute,
        morning = hour < 12 ? "am" : "pm";

    return month + "/" + day + "/" + year + " " + hourFormatted + ":" +
            minuteFormatted + morning;
}

다음과 같이 할 수 있습니다.

function formatAMPM(date) { // This is to display 12 hour format like you asked
  var hours = date.getHours();
  var minutes = date.getMinutes();
  var ampm = hours >= 12 ? 'pm' : 'am';
  hours = hours % 12;
  hours = hours ? hours : 12; // the hour '0' should be '12'
  minutes = minutes < 10 ? '0'+minutes : minutes;
  var strTime = hours + ':' + minutes + ' ' + ampm;
  return strTime;
}

var myDate = new Date();
var displayDate = myDate.getMonth()+ '/' +myDate.getDate()+ '/' +myDate.getFullYear()+ ' ' +formatAMPM(myDate);
console.log(displayDate);

깡깡이

참고 URL : https://stackoverflow.com/questions/25275696/javascript-format-date-time

반응형