JavaScript | slice() とよく比較される splice() の違い

JavaScript JavaScript
スポンサーリンク

それでは「slice と splice の使い分け」を意識した 応用練習問題 を出してみますね。解答と解説もつけます。


応用練習問題

問題1:最後の3件を取り出す

次の配列から「最後の3件」だけを取り出して新しい配列を作りたい。
どちらを使うべきでしょうか?また、コードを書いてください。

const logs = [65, 70, 84, 90, 77];
JavaScript

問題2:先頭の要素を削除したい

次の配列から「先頭の1件」を削除して、残りを元の配列に残したい。
どちらを使うべきでしょうか?また、コードを書いてください。

const letters = ['a', 'b', 'c', 'd'];
JavaScript

問題3:途中に要素を挿入したい

次の配列の「インデックス2」に 'X' を挿入して、元の配列を更新したい。
どちらを使うべきでしょうか?また、コードを書いてください。

const nums = [10, 20, 30, 40];
JavaScript

解答と解説

問題1

👉 slice を使う(元を壊さずコピーしたいから)

const logs = [65, 70, 84, 90, 77];
const lastThree = logs.slice(-3);
console.log(lastThree); // [84, 90, 77]
console.log(logs);      // [65, 70, 84, 90, 77](元はそのまま)
JavaScript

問題2

👉 splice を使う(元の配列から削除したいから)

const letters = ['a', 'b', 'c', 'd'];
letters.splice(0, 1);
console.log(letters); // ['b', 'c', 'd']
JavaScript

問題3

👉 splice を使う(途中に挿入して元を更新したいから)

const nums = [10, 20, 30, 40];
nums.splice(2, 0, 'X');
console.log(nums); // [10, 20, 'X', 30, 40]
JavaScript

まとめ

  • slice → 部分配列をコピーしたいとき(元を壊さない)
  • splice → 元の配列を直接編集したいとき(削除・追加・置換)
タイトルとURLをコピーしました