ECMAScript 2025가 공식 표준으로 승인됨
(2ality.com)- ECMAScript 2025가 2025년 6월 25일 공식 표준으로 승인되어 다양한 새로운 기능이 추가됨
- Import attributes와 JSON 모듈을 통해 비 JavaScript 리소스의 가져오기 방식 개선
- Iterator helper methods로 대용량 데이터 처리 및 다양한 반복 작업의 효율성 향상
- Set과 RegExp 등 주요 내장 객체에 새로운 메서드가 대거 추가되어 사용성 강화
- 16비트 부동소수점(float16) 지원 등 데이터 처리 성능 및 표현력 확장
ECMAScript 2025의 공식 승인
- 2025년 6월 25일, Ecma International 129차 총회에서 ECMAScript 2025가 공식 표준으로 승인됨
새로운 주요 기능
Import attributes와 JSON 모듈
- Import attributes는 비 JavaScript 아티팩트(import 대상 리소스)에 대해 타입 등 속성을 명시할 수 있는 문법임
- JSON 모듈을 처음으로 공식 지원,
import configData from './data.json' with { type: 'json' };형태로 간편하게 JSON 데이터 불러오기 가능함 - 동적 import(
import()호출)에서도 동일하게 속성 지정 가능함
Iterator helper methods
- Array 메서드와 유사하지만 iterator에 특화된 다양한 헬퍼 메서드가 도입됨
filter,map,flatMap,some,every,find,reduce,forEach등 기존 메서드drop,take,toArray등 반복자 전용 신규 메서드 포함
- Set, Map 등 모든 iterable 객체에서 직접 활용 가능
- 중간 배열 생성을 하지 않고 데이터가 필요한 만큼만 순차적으로 처리하여 대용량 데이터에 효과적임
Set 메서드 확장
- 합집합, 교집합, 차집합, 대칭차집합(symmetric difference) 연산 메서드 추가
Set.prototype.union(other),intersection(other),difference(other),symmetricDifference(other)
- 부분집합/** 상위집합**/** 서로소** 판별 메서드 제공
isSubsetOf(other),isSupersetOf(other),isDisjointFrom(other)
정규표현식 개선
RegExp.escape()
- 임의의 문자열을 정규표현식에서 안전하게 사용할 수 있도록 자동 이스케이프하는
RegExp.escape()도입
패턴 내 인라인 플래그(Inline flags)
- 정규표현식 내 일부 패턴에만 개별 플래그(
i,u등) 적용이 가능해짐- 예:
/^x(?i:HELLO)x$/는 HELLO 부분만 대소문자 구분 없이 매칭
- 예:
중복 이름 캡처 그룹 지원
- 정규표현식 대안(branch)별로 동일한 이름의 캡처 그룹 사용 가능
- 예:
/(?<chars>a+)|(?<chars>b+)/v
- 예:
Promise.try()
- 동기/비동기 코드의 혼합 처리를 단일 Promise 체인으로 시작할 수 있는
Promise.try()도입- 기존에는 동기 예외 처리가 번거로웠으나, now 간결하게 가능함
16비트 부동소수점(float16) 지원
Math.f16round()로 16비트 부동소수점 반올림 처리 가능- TypedArray에
Float16Array타입 추가 DataView에getFloat16(),setFloat16()메서드 도입
참고 자료 및 무료 도서
- 무료 온라인 도서 “Exploring JavaScript (ES2025 Edition)” 제공
- JavaScript의 역사 및 발전, 새 ECMAScript 기능 등 자세히 설명
- 주요 신기능 별로 실제 사용 예시와 설명 제공