JavaScript | 配列の splice メソッド

JavaScript JavaScript
スポンサーリンク

では、splice を使って 複数要素の置換・移動 を実際のアプリっぽくシミュレーションしてみましょう。
今回は「TODOリスト」の例で説明します。


実践例:TODOリストで複数項目を置換・移動

let todos = ['買い物', '掃除', '宿題', '洗濯', '散歩'];
console.log('初期リスト:', todos);
// ['買い物', '掃除', '宿題', '洗濯', '散歩']

// 1) 複数の項目を一度に置換
// '掃除' と '宿題' を削除して、'料理', '勉強' を追加
todos.splice(1, 2, '料理', '勉強');
console.log('置換後:', todos);
// ['買い物', '料理', '勉強', '洗濯', '散歩']

// 2) 項目を移動('散歩' を先頭に持ってくる)
let moved = todos.splice(4, 1); // index4の '散歩' を削除
todos.splice(0, 0, moved[0]);   // index0 に挿入
console.log('移動後:', todos);
// ['散歩', '買い物', '料理', '勉強', '洗濯']

// 3) 複数項目を削除(後ろ2つを削除)
todos.splice(-2, 2);
console.log('後ろを削除:', todos);
// ['散歩', '買い物', '料理']
JavaScript

イメージ図(配列の変化)

初期:   ['買い物', '掃除', '宿題', '洗濯', '散歩']

置換:   ['買い物', '料理', '勉強', '洗濯', '散歩']
         ↑削除2個  ↑追加2個

移動:   ['散歩', '買い物', '料理', '勉強', '洗濯']
         ↑移動した項目

削除:   ['散歩', '買い物', '料理']
                 ↑削除2個

ポイント

  1. 複数削除+追加で置換できる → まとめて更新できるので便利
  2. 削除した要素は配列として返る → 移動や再利用が可能
  3. 負のインデックスも使える-1 は最後の要素、-2 は最後から2番目

💡 応用アイデア

  • TODOリストの「優先度の高い順」に並べ替えたり
  • 選択した複数タスクをまとめて移動したり
  • 古いタスクをまとめて削除する

すべて splice 1つで対応できます。

タイトルとURLをコピーしました