JavaScript에서 날짜 객체(Date 객체)를 시간 형식의 문자열로 변환하려면 toISOString() 메서드를 사용할 수 있습니다. 이 메서드는 ISO 8601 국제 표준 형식에 따라 날짜와 시간을 문자열로 반환합니다.
ISO 표준 형식
YYYY-MM-DDTHH:mm:ss.sssZ
각 부분의 의미는 다음과 같습니다.
- YYYY-MM-DD — 연도, 월, 일
- T — 날짜와 시간을 구분하는 구분자
- hh:mm:ss.sss — 시, 분, 초 및 밀리초
- Z — UTC(협정 세계시) 기준임을 나타냄
예제 코드
다음 코드를 실행하여 날짜 객체를 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-05-25T09:55:53.518Z
hh:mm:ss 형식만 추출하기
toISOString()은 전체 날짜와 시간을 반환하기 때문에, 시간 부분(hh:mm:ss)만 필요하다면 slice() 또는 substring() 메서드를 활용할 수 있습니다.
var date = new Date(); var time = date.toISOString().slice(11, 19); console.log(time); // 예: "09:55:53"
이처럼 인덱스 11부터 18까지 잘라내면 시, 분, 초만 포함된 문자열을 손쉽게 얻을 수 있으며, 로그 기록이나 UI에 현재 시간을 표시할 때 유용하게 활용됩니다.