概要
Ecma Internationalは2026年6月30日、JavaScriptの言語仕様であるECMAScript 2026(第17版)を正式に承認した。ECMAScriptはJavaScriptの標準仕様であり、毎年6月に新版が承認されるのが恒例となっている。今回の第17版では、数値計算、イテレータ、配列、Map/WeakMap、バイナリデータのエンコーディング、JSONの扱いといった幅広い領域にわたって新しいメソッドが追加され、開発者がより効率的かつ安全にコードを書けるようにする改善が盛り込まれた。
技術的な詳細
新機能の中でも注目されるのがMath.sumPreciseで、大きさの異なる数値を合計する際に生じやすい精度損失を最小限に抑えながら加算処理を行えるようにするメソッドだ。イテレータ関連ではIterator.concatが追加され、複数のイテレータを1つに連結する処理をシンプルに記述できるようになる。非同期処理の分野ではArray.fromAsyncが導入され、非同期イテラブルやその他の非同期データソースから直接配列を構築できるようになった。
エラー処理まわりではError.isErrorが追加され、あるオブジェクトがエラーオブジェクトであるかどうかを確実に判定できるようになる。また、MapおよびWeakMapには、指定したキーが存在しない場合にデフォルト値を返す/設定する機能が拡張された。バイナリデータの扱いでは、Uint8Arrayが16進数文字列やBase64エンコード文字列との相互変換をネイティブにサポートするようになり、これまでライブラリに頼っていた処理を標準機能だけで完結できるようになる。加えて、JSON.parseおよびJSON.stringifyにもより細かい制御を可能にする強化が加えられた。
今後の展望
これらの新機能はいずれも実用上の細かな不便を解消するものであり、大規模な言語仕様の刷新というよりは、日々の開発でよく遭遇する課題に対する地道な改善の積み重ねと言える。ECMAScriptは今後も毎年6月に新版が承認される予定であり、各機能はまずステージプロセスを経て提案され、主要ブラウザやNode.jsなどのランタイムでの実装が追随していく見込みだ。