配列の一部を取り出す - slice

《 初回公開:2023/10/19 , 最終更新:未 》

sliceメソッドは、配列の一部を新しい配列として切り出(シャローコピー)して返す、元の配列は変更されない。

構文
array.slice([start[, end]])
引数
start(オプション)
切り出す範囲の最初の要素のインデックス、デフォルトは0。
startがarray.length-1を超える場合は空の配列を返す。
負の値を指定すると配列の最後のインデックスからの位置を示す。
end(オプション)
切り出す範囲の最後の要素の次のインデックス、デフォルトはarray.length。
array.length-1を超える場合は配列の最後の要素までを取り出す。
負の値を指定すると配列の最後のインデックスからの位置を示す。
戻り値
元の配列の部分配列を新しい配列として返す

const array = ["a", "b", , "d"];

// 引数を省略した場合は、元の配列のシャローコピーを返す
// 空のスロットは空のままに
console.log(array.slice()); // ["a", "b", , "d"]

// 引数をインデックス1からインデックス4の一つ前つまり3までを返す
console.log(array.slice(1, 3)); // ["b", ]

// 引数endがarray.length-1を超える場合は最後の要素までを返す
console.log(array.slice(1, 5)); // ["b", , "d"]

// 引数startがarray.length-1を超える場合は空の配列を返す
console.log(array.slice(5, 3)); // [];

// 引数が負の値の場合は最後のインデックスからの位置を示す
console.log(array.slice(-3, -1));   // ["b", ]      
ページのトップへ戻る