配列スライスの8通りのユニークな使い方
- 開始位置と終了位置を指定:slice(start, end)
指定された範囲の要素を要素の新規配列にまとめて返します。start から end の要素(endを除く)が返されます。ただし、省略された場合は、start から配列の末尾までのすべての要素が返されます。
- 指定位置から最後まで:slice(start)
start のみ引数が渡された場合は、start のインデックスから配列の末尾までの要素を返します。
- 配列全体をコピーする:slice()
引数が渡されない場合、元の配列のシャローコピーが返されます。
- 先頭からではなく、末尾側から要素を取り出す:slice(-start, -end)
負のインデックスを渡すと、末尾から数えるインデックスを表します。たとえば、slice(-3, -1) は、3番目から2番目までの要素を返す新しい配列です。
- Start位置から最後までを指定で負のインデックスとend省略で取得:slice(-start)
負のインデックスを一つだけ渡した場合、そのインデックスから配列末尾までの要素を返します。
- 配列の一部を指定位置からコピーする: slice(開始, 長さ)
2番目の引数が正の値の場合、start インデックスから指定した長さの要素を抜き出した新しい配列を返します。
- 指定した位置から配列の一部をコピーして、負数のインデックスを使用します: slice(start, -length)
負インデックスの2番目の引数が指定されている場合は、startインデックスから指定された長さの要素を除いた新しい配列を返します。
- 負のインデックスと第2引数の省略を使って指定の位置から配列の先頭までスライス: slice(-start)
負のインデックスが1つだけ渡された場合、そのインデックスから配列の先頭までの全要素が返されます。