Temporal API가 무엇일까?

안녕하세용

JavaScript(자바스크립트)는 무엇인가요? I 자바스크립트 기초 가이드 - 모두의연구소

Temporal는 자바스크립트에 추가 될 예정인 기능이다. 자바스크립트에서 날짜와 시간을 다루는 기능을 한다.

Date는 어쩌고?

사실 날짜와 시간을 다루는 기능은 이미 Date가 있다. 근데 굳이 Date를 대체 할 신기능을 만들려는 이유가 무엇일까?

Date에 많은 문제점 (Time zone 지원 안함, 그 외 여러가지 복잡한 문제점 있음) 때문에 바꾸려는 것. Date에 있는 문제점을 지금에서야 고치기에 이미 많은 웹에서 해당 문제점을 수용한 코드를 사용하고 있고 문제점을 고치면 버그가 생기기 때문이다. 해당 이유때문에 사람들은 서드파티 라이브러리를 이용하고 있었다. Temporal은 이러한 문제점들을 해결한 API이며 해당 API가 나올 때 까지 우선 기다려 보자.

주요 기능

https://tc39.es/proposal-temporal/docs/

우선 Date에서는 없었던 timezone이 추가되었다.

const t = Temporal.ZonedDateTime.from({
     timeZone: 'Asia/Seoul',
     year: 2021, month: 12, day: 27,
     hour: 2, minute: 7, second: 0, millisecond: 0,
     microsecond: 0, nanosecond: 0 
});


만약 미리 쓰고 싶다면??

현재는 사용할 수 없지만 Polyfill등의 방법으로 미리 사용할 수는 있다.