Skip to main content

Що робить splice()?

Він може видаляти, додавати та замінювати елементи прямо у вихідному масиві.

Синтаксис

javascript
array.splice(start, deleteCount, item1, item2, ...);
ПараметрЩо робить
startІндекс, з якого починаємо зміни
deleteCountСкільки елементів видалити
item1, item2, ...Елементи, які потрібно вставити на місце видалених (необов'язково)

1. Видалення елементів

javascript
const arr = ["a", "b", "c", "d"]; const removed = arr.splice(1, 2); console.log(arr); // ["a", "d"] console.log(removed); // ["b", "c"]
  • З позиції 1 видалити 2 елементи.
  • Повертає масив видалених елементів.
  • Вихідний масив змінюється.

2. Додавання елементів

javascript
const arr = ["a", "d"]; arr.splice(1, 0, "b", "c"); console.log(arr); // ["a", "b", "c", "d"]
  • deleteCount = 0 - значить, нічого не видаляємо.
  • Додаємо "b" та "c" на позицію 1.
  • Все, що було після, зсувається вправо.

3. Заміна елементів

javascript
const arr = ["a", "b", "c"]; arr.splice(1, 1, "x", "y"); console.log(arr); // ["a", "x", "y", "c"]
  • Починаючи з індексу 1, видалити 1 елемент ("b")
  • і вставити "x", "y" замість нього.
  • Можна вважати це видаленням + вставкою одночасно.

4. Використання від'ємних індексів

javascript
const arr = [1, 2, 3, 4]; arr.splice(-2, 1); // видалити один елемент, починаючи з кінця console.log(arr); // [1, 2, 4]

-2 означає «другий елемент з кінця».

5. Якщо видалити більше, ніж є

javascript
const arr = [1, 2]; arr.splice(1, 10); console.log(arr); // [1]

Метод не видає помилку - просто видалить все, що є, починаючи з позиції 1.

Коротко:

Що робитьПрикладРезультат
Видаляєarr.splice(1, 2)Видаляє 2 елементи з індексу 1
Додаєarr.splice(2, 0, "x")Вставляє "x" на позицію 2
Замінюєarr.splice(1, 1, "x")Змінює 1 елемент на "x"
Повертає["видалені елементи"]масив видалених значень
Мутує вихідний масивТак

Приклад "все одразу"

javascript
const arr = [1, 2, 3, 4, 5]; // видалити 2 елементи з індексу 1 і вставити нові const removed = arr.splice(1, 2, "a", "b", "c"); console.log(arr); // [1, "a", "b", "c", 4, 5] console.log(removed); // [2, 3]

Підсумок: splice() - це універсальний "швейцарський ніж" для масивів: він видаляє, додає та замінює елементи прямо у вихідному масиві і повертає масив видалених значень.

Коротка відповідь

Для співбесіди
Premium

Коротка відповідь допоможе вам впевнено відповідати на цю тему під час співбесіди.