ES2023で追加されたイミュータブルな配列メソッド

image.png (59.9 kB)

TOC

ES2023で追加された新しいイミュータブルなメソッドとして、toReversed、toSorted、toSpliced、withがあります。以下でそれぞれのメソッドについて説明します。

toReversed()

toReversed()メソッドは、呼び出した配列の要素を逆順にした新しい配列を返します。

const originalArray = [1, 2, 3, 4, 5];
const reversedArray = originalArray.toReversed();
console.log(originalArray); // [1, 2, 3, 4, 5]
console.log(reversedArray); // [5, 4, 3, 2, 1]

toSorted()

toSorted()メソッドは、呼び出した配列の要素を昇順にソートした新しい配列を返します。元の配列は変更されません。

const originalArray = [3, 1, 4, 2, 5];
const sortedArray = originalArray.toSorted();
console.log(sortedArray); // [1, 2, 3, 4, 5]
console.log(originalArray); // [3, 1, 4, 2, 5]

toSpliced()

toSpliced(start, deleteCount, ...items)メソッドは、呼び出した配列の一部分を削除し、新しい要素を挿入した新しい配列を返します。元の配列は変更されません。start引数は開始位置、deleteCount引数は削除する要素数を指定します。...items引数は追加する要素です。

const originalArray = [1, 2, 3, 4, 5];
const splicedArray = originalArray.toSpliced(2, 2, 'a', 'b');
console.log(splicedArray); //  [1, 2, 'a', 'b', 5]
console.log(originalArray); // [1, 2, 3, 4, 5]

with()

with(...items)メソッドは、呼び出した配列に新しい要素を追加した新しい配列を返します。元の配列は変更されません。...items引数は追加する要素です。

const originalArray = [1, 2, 3];
const newArray = originalArray.with(1, 5);
console.log(newArray); // [1, 5, 3]
console.log(originalArray); // [1, 2, 3]
CONTACT
© 2023, Kakkiii All Rights Reserved.