JavaScript에서 날짜를 yyyy-mm-dd 형식으로 변환하려면 toISOString() 메서드를 사용하면 됩니다. 이 메서드는 ISO 8601 국제 표준에 따라 다음과 같은 형식의 문자열을 반환합니다.
YYYY-MM-DDTHH:mm:ss.sss
예제
아래 코드를 실행하면 현재 날짜가 ISO 표준 형식으로 출력됩니다.
<html>
<head>
<title>JavaScript Dates</title>
</head>
<body>
<script>
var date, res;
date = new Date();
res = date.toISOString();
document.write(res);
</script>
</body>
</html>
출력 결과
2018-12-15T08:13:47.648Z
날짜 부분만 추출하기
toISOString()의 반환값에는 시간 정보까지 포함되어 있기 때문에, 순수한 날짜 문자열(yyyy-mm-dd)만 필요한 경우에는 split() 또는 slice() 메서드를 활용하면 편리합니다.
var date = new Date();
var formattedDate = date.toISOString().split('T')[0];
document.write(formattedDate); // 2018-12-15
앞에서 10자리만 잘라내는 방식도 동일한 결과를 얻을 수 있습니다.
var formattedDate = new Date().toISOString().slice(0, 10);
단, toISOString()은 UTC(협정 세계시) 기준으로 변환되므로, 한국 시간(KST) 기준의 날짜가 필요하다면 시차(UTC+9)를 고려해 처리해야 한다는 점에 유의하세요.