ECMAScript 2024 承認:新機能は?
(2ality.com)同期 iterable のグループ化
Map.groupBy()は、iterable の項目をコールバックで提供されたキーを持つ Map の項目としてグループ化Object.groupBy()は、Map の代わりにオブジェクトを生成
Promise.withResolvers()
- resolve したい Promise を生成する新しい方法を提供
正規表現フラグ /v
- 新しい正規表現フラグ
/v(.unicodeSets) は、次の機能を有効化する:- Unicode 文字列プロパティに対するエスケープ(
/uによる Unicode コードポイントプロパティEmojiと、/vによる新しい Unicode 文字列プロパティRGI_Emoji) - 文字クラス内での
\q{}による文字列リテラル - 文字クラスに対する集合演算
- Unicode プロパティエスケープが
[^···]によって否定されるとき、/iで改善されたマッチング
- Unicode 文字列プロパティに対するエスケープ(
ArrayBuffer と SharedArrayBuffer の新機能
- ArrayBuffer:
- 直接サイズ変更が可能
- 転送のための
.transfer()メソッドを追加
- SharedArrayBuffer:
- サイズは増やせるが、縮小はできない
- 転送不可のため、
ArrayBuffersが持つ.transfer()メソッドはない
文字列が well-formed かどうかを確認
- 2 つの新しいメソッドで文字列が (UTF-16) well-formed かどうかを確認可能:
- String メソッド
.isWellFormed()は、JavaScript 文字列が well-formed で、lone surrogate を含まないかを確認 - String メソッド
.toWellFormed()は、各 lone surrogate がコードユニット 0xFFFD(同じ数値のコードポイントを表す「置換文字」)に置き換えられた受信者のコピーを返すため、結果は well-formed になる
- String メソッド
Atomics.waitAsync()
Atomics.waitAsync()を使うと、共有メモリの変更を非同期に待機できる
ECMAScript 2024 に関する無料の本
- "Exploring JavaScript (ES2024 Edition)" はオンラインで無料で読める。特に関連する 2 つの章
- "History and evolution of JavaScript": ECMAScript vs. JavaScript、TC39、TC39 プロセス、ECMAScript 提案など
- "New JavaScript features": 各 ECMAScript バージョンの新機能は何か?
まだコメントはありません。