JavaScriptのTypedArray.slice()メソッドの使い方を解説|構文とサンプルコード
TypedArray.slice()メソッドとは
型付き配列(TypedArray)オブジェクトのslice()メソッドは、配列バッファから指定した範囲の一部分(チャンク)を切り出し、新しい別のオブジェクトとして返します。引数には、返される範囲の開始位置と終了位置を表す2つの整数値を渡します。
このメソッドは元の配列を一切変更せず、常に要素のコピーを作成して返す点が大きな特徴です。そのため、元データを保持したまま部分配列を安全に取得したい場合に役立ちます。
構文
typedArray.slice(開始インデックス, 終了インデックス)
- 開始インデックス: 切り出しを始める位置(0始まり)。省略した場合は先頭から処理されます。
- 終了インデックス: 切り出しを終える位置(この位置の要素自体は含まれません)。省略した場合は配列の末尾まで対象になります。
- 負の値: 配列の末尾からの相対的な位置として解釈されます。
使用例
<html>
<head>
<title>JavaScript TypedArray sliceメソッド</title>
</head>
<body>
<script type="text/javascript">
var typedArray = new Int32Array([11, 5, 13, 4, 15, 3, 17, 2, 19, 8]);
document.write("型付き配列の内容:" + typedArray);
document.write("<br>");
var resultantArray = typedArray.slice(2, 7);
document.write("結果の配列:" + resultantArray);
</script>
</body>
</html>実行結果
型付き配列の内容:11,5,13,4,15,3,17,2,19,8 結果の配列:13,4,15,3,17
コードの解説
上記の例では、Int32Arrayに10個の数値を格納しています。typedArray.slice(2, 7) を実行すると、インデックス2から6まで(終了位置7の直前まで)の要素である「13, 4, 15, 3, 17」が抽出され、新しい型付き配列として返されます。
重要なのは、この操作を行っても元の typedArray の中身はまったく変化しないという点です。slice()はあくまでコピーを生成する非破壊的なメソッドであり、元のデータを保護しながら部分配列を扱うことができます。
-
JavaScriptのslice()メソッドとは?配列から要素を抽出する方法を実例付きで解説
slice()メソッドの基本JavaScriptのslice()メソッドは、配列の中から指定した範囲の要素を選び出し、新しい配列として返すメソッドです。元の配列は変更されずそのまま残るため、安全に部分的なデータを取り出したい場合に活用できます。基本構文array.slice(start, end)start:抽出を開始する位置を示す整数(インデックス番号)です。end:抽出を終了する位置を示す整数で、この位置にある要素自体は結果に含まれません。それでは、実際にslice()メソッドをJavaScriptで使ってみましょう。例1:配列の一部を切り取って表示する<!DOCTYPE html&
-
JavaScriptのslice()メソッドとは?配列から要素を取り出す使い方を実例で解説
JavaScriptのslice()メソッドは、大きな配列の中から選択した範囲の要素を抜き出し、新しい配列として返すメソッドです。最大の特徴は、元の配列を一切変更しない(非破壊的な操作)という点にあります。そのため、元データを保持したまま部分的なコピーを作りたい場合に非常に便利です。 slice()メソッドの基本構文 arr.slice(start, end) start:取り出しを開始するインデックス番号(省略可・デフォルトは0) end:取り出しを終了する位置の直前のインデックス番号(省略可・デフォルトは配列の末尾まで)。endで指定した要素自体は結果に含まれない点に注意してください。