Запропонувати правкуПокращити цю статтюДопрацюйте відповідь до «push() vs concat()». Ваші зміни проходять модерацію перед публікацією.Потрібне підтвердженняКонтентЩо ви змінюєте🇺🇸EN🇺🇦UAПереглядЗаголовок (UA)Коротка відповідь (UA)Методи **`push()`** і **`concat()`** справді схожі - обидва додають елементи в масив, але роблять це зовсім по-різному. **Ключове:** `push()` змінює (мутує) вихідний масив і повертає нову довжину, а `concat()` створює новий масив і повертає його, не змінюючи вихідний.Показується над повною відповіддю для швидкого нагадування.Відповідь (UA)ЗображенняМетоди `push()` і `concat()` справді схожі - обидва **додають елементи в масив**, але роблять це **зовсім по-різному**. ## 1. `push()` - змінює (мутує) вихідний масив ```javascript const arr = [1, 2]; arr.push(3); console.log(arr); // [1, 2, 3] ``` - Додає елемент(и) **в кінець вихідного масиву**. - **Змінює** (мутує) вихідний масив. - **Повертає нову довжину** масиву, а не сам масив. ```javascript const len = arr.push(4, 5); console.log(len); // 5 console.log(arr); // [1, 2, 3, 4, 5] ``` ## 2. `concat()` - створює новий масив (не мутує) ```javascript const arr = [1, 2]; const newArr = arr.concat(3); console.log(arr); // [1, 2] - вихідний не змінився console.log(newArr); // [1, 2, 3] ``` - **Не змінює** вихідний масив. - Повертає **новий масив**. - Можна об'єднувати **кілька масивів або окремі значення**: ```javascript const a = [1, 2]; const b = [3, 4]; const c = a.concat(b, 5, [6, 7]); console.log(c); // [1, 2, 3, 4, 5, 6, 7] ``` ## Порівняння поведінки | Властивість | `push()` | `concat()` | | --- | --- | --- | | Змінює вихідний масив | Так | Ні | | Повертає | Нову довжину | Новий масив | | Приймає | Один або декілька **елементів** | Масиви та/або елементи | | Створює копію | Ні | Так | | Мутація | Так | Ні | | Типова задача | Додати елемент до наявного масиву | Об'єднати масиви | ## Приклад різниці: ```javascript const arr = [1, 2]; const arr2 = [3, 4]; // push() arr.push(...arr2); console.log(arr); // [1, 2, 3, 4] (масив змінився) // concat() const combined = arr.concat(arr2); console.log(combined); // [1, 2, 3, 4] console.log(arr); // [1, 2] (вихідний не зачеплено) ``` ## Коротко: | Характеристика | `push()` | `concat()` | | --- | --- | --- | | Мутує масив | Так | Ні | | Повертає | число (`length`) | новий масив | | Додає в кінець | Так | Так | | Можна додати інший масив | Так (через `...spread`) | Так, напряму | | Використовувати при | зміні поточного масиву | створенні нового | > **Висновок:** > > - Якщо потрібно **змінити** поточний масив - використовуй `push()`. > - Якщо потрібно **створити новий**, не чіпаючи старий - використовуй `concat()`.Для рев’юераПримітка для модератора (необов’язково)Бачить лише модератор. Прискорює рев’ю.