sliceメソッドを使用して、配列オブジェクトから新しい配列オブジェクトを生成する方法を解説します。
構文
array.slice([start[, end]])
インスタンス – array: Arrayオブジェクト
第1引数 – start: 配列のコピーを開始するインデックス
第2引数 – end: 配列のコピーを終了するインデックス + 1
戻り値 – 新しいArrayオブジェクト
サンプルプログラム
const fruits = ['apple', 'banana', 'grape', 'orange', 'strawberry'];
console.log(fruits.slice()); // すべての要素をコピー
console.log(fruits.slice(1)); // インデックスが1の要素から最後の要素までをコピー
console.log(fruits.slice(2, 4)); // インデックスが2の要素から3の要素までをコピー
console.log(fruits); // 元の配列は変わらない
■出力結果
[ ‘apple’, ‘banana’, ‘grape’, ‘orange’, ‘strawberry’ ]
[ ‘banana’, ‘grape’, ‘orange’, ‘strawberry’ ]
[ ‘grape’, ‘orange’ ]
[ ‘apple’, ‘banana’, ‘grape’, ‘orange’, ‘strawberry’ ]
補足情報
引数に何も設定しない場合は、すべての配列要素をコピーし新しい配列オブジェクトを生成します。この場合は、Array.fromメソッドと同じ働きをすることになります。
コメント