더북(TheBook)

위크맵, 위크세트, 약한 참조: 객체에 대한 약한 참조만 보유하기 위해 포함됨(가비지 컬렉션 가능)

표준 라이브러리 추가: Object, Array, Array.prototype, String, String.prototype, Math등에 대한 새로운 메서드

동적 메타 프로그래밍 지원: 프록시(Proxy)와 리플렉트(Reflect)

심볼: 보장된 고윳값(특히 고유한 속성 이름에 유용함)

BigInt: 임의의 정밀도 정수

그리고 그 외의 많은 기능들

이러한 새로운 모든 기능, 특히 새로운 구문 때문에 압도될 수 있다. 걱정하지 말자! 새로운 기능을 사용할 준비가 되어 있지 않거나 필요하지 않는 한 새로운 기능을 채택할 필요가 없다. TC39가 준수하는 핵심 원칙 중 하나는 “웹을 망가뜨리지 말라”이다. 즉, 자바스크립트는 “웹 호환” 상태를 유지해야 한다. 다시 말해 오늘날 세계에 이미 존재하는 엄청난 양의 코드와 호환되어야 한다. 새로운 기능이 필요하지 않거나 새로운 기능이 마음에 들지 않는다면 사용할 필요가 없다. 기존 방식은 계속해서 작동할 것이다. 그렇지만 많은 경우에 새로운 기능, 특히 새로운 구문 기능을 사용해야 한다는 설득력 있는 이유가 있음을 발견할 것이다. 이러한 기능은 더 단순하며 작성하고 이해하는 데 오류가 덜 생기게 한다. 즉, 프록시나 위크맵/위크세트, 공유 메모리를 비롯한 기능으로 이전에는 할 수 없었던 일 대부분이 새로운 구문으로 가능해졌다.

지면상의 이유로 이 책은 자바스크립트 사양 자체인 ECMA-262의 새로운 장난감만을 다룬다. 그러나 ECMAScript 국제화 API 사양인 ECMA-402에는 읽을 만한 가치가 있고 몇 가지 흥미로운 새 장난감이 있다. 이 책의 웹사이트 https://thenewtoys.dev/internationalization에서 ECMA-402에 관한 내용을 찾을 수 있다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.