Запропонувати правкуПокращити цю статтюДопрацюйте відповідь до «Що робить splice()?». Ваші зміни проходять модерацію перед публікацією.Потрібне підтвердженняКонтентЩо ви змінюєте🇺🇸EN🇺🇦UAПереглядЗаголовок (UA)Коротка відповідь (UA)Він може **видаляти, додавати та замінювати елементи прямо у вихідному масиві**. **Ключове:** `splice()` - універсальний інструмент, що мутує сам масив і повертає масив видалених значень.Показується над повною відповіддю для швидкого нагадування.Відповідь (UA)ЗображенняВін може **видаляти, додавати та замінювати елементи прямо у вихідному масиві**. ## Синтаксис ```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()` - це **універсальний "швейцарський ніж"** для масивів: > він **видаляє, додає та замінює елементи прямо у вихідному масиві** > і повертає масив **видалених** значень.Для рев’юераПримітка для модератора (необов’язково)Бачить лише модератор. Прискорює рев’ю.