프로그래밍 언어 자바스크립트(JavaScript)의 오랜 골칫거리였던 날짜와 시간 관련 오류 문제가 9년 만에 해결될 전망이다.

13일 블룸버그 비즈니스에 따르면, 자바스크립트의 새로운 날짜·시간 표준 API '템포럴(Temporal)'이 국제 표준화 기구 ECMA 인터내셔널의 기술위원회 TC39에서 최종 단계인 '스테이지 4'에 도달했다. 이로써 템포럴은 차기 자바스크립트 표준인 'ECMAScript 2026'에 공식 포함이 확정됐다.

기존 자바스크립트의 'Date' 객체는 여러 문제점을 안고 있었다. 현지 시간이 아닌 다른 시간대를 제대로 지원하지 못하고, 일광절약시간제(DST) 적용이 예측 불가능하며, 데이터 변경이 가능한 '가변성(mutability)' 특성 탓에 오류 발생 가능성이 컸다. 이 때문에 개발자들은 'Moment.js'와 같은 외부 라이브러리를 추가로 설치해 사용해야 하는 불편을 겪었다.

템포럴은 이러한 문제들을 해결하기 위해 설계됐다. 데이터 변경이 불가능한 '불변성(immutability)'을 보장해 안정성을 높였고, 여러 시간대와 비(非)그레고리력 달력까지 지원한다. 또한 날짜 및 시간 계산을 위한 직관적인 API를 제공해 코드 가독성과 개발 효율성을 크게 향상시켰다.

이번 표준 채택 과정에서는 블룸버그가 주도적인 역할을 수행했다. 블룸버그는 금융 정보를 다루는 '블룸버그 터미널'에 자바스크립트를 광범위하게 사용하면서 'Date' 객체의 한계를 절감했다. 이에 오픈소스 컨설팅 기업 이갈리아(Igalia)에 자금 지원과 기술 협력을 제공하며 템포럴 개발을 이끌었다.

블룸버그 자바스크립트 인프라팀의 롭 파머 매니저는 "기존 라이브러리들은 시간대 정보 등을 위해 수십, 수백 킬로바이트의 데이터를 내려받아야 했다"며 "템포럴은 이런 기능이 브라우저에 내장돼 효율성을 높인다"고 설명했다.

템포럴 개발은 2017년 처음 제안됐으며, 블룸버그와 이갈리아 외에도 구글, 마이크로소프트 등 여러 기업의 개발자들이 챔피언으로 참여했다. 템포럴은 약 4500개의 테스트를 거치며 역대 자바스크립트 기능 중 가장 큰 규모로 기록됐다.

이미 크롬, 파이어폭스, 엣지 등 주요 웹 브라우저에서는 템포럴을 지원하고 있으며, 향후 사파리, 노드JS(Node.js) 등에서도 지원이 추가될 예정이다. 기존 'Date' 객체는 계속 지원되므로 기존 코드가 중단될 우려는 없지만, 개발자들은 더 안정적이고 효율적인 템포럴로의 전환을 고려할 수 있게 됐다.