同期 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 で改善されたマッチング
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 になる
Atomics.waitAsync()
Atomics.waitAsync() を使うと、共有メモリの変更を非同期に待機できる
ECMAScript 2024 に関する無料の本
まだコメントはありません。