--- title: Array.prototype.concat() slug: Web/JavaScript/Reference/Global_Objects/Array/concat tags: - Array - JavaScript - Method - Prototype - Масив - метод translation_of: Web/JavaScript/Reference/Global_Objects/Array/concat ---
{{JSRef}}

Метод concat() повертає новий масив, що складається із масиву, в контексті якого метод був викликаний, поєднаного із масивом (масивами) та/або іншими значеннями, що були передані як аргументи.

{{EmbedInteractiveExample("pages/js/array-concat.html")}}

Синтаксис

var new_array = old_array.concat(value1[, value2[, ...[, valueN]]])

Параметри

valueN
Масиви та/або значення, які поєднуються в новий масив. Якщо всі параметри valueN пропущені, метод concat повертає дрібну копію існуючого масиву, на якому був викликаний. Додаткову інформацію дивіться нижче в описі.

Повернене значення

Новий екземпляр об'єкта {{jsxref("Array")}}.

Опис

Метод concat створює новий масив, який складається із елементів об'єкта, на якому метод був викликаний, а також із елементів кожного аргумента (якщо цей аргумент - масив) або з самого аргумента (якщо він не є масивом). Метод не заходить у аргументи вкладених масивів.

Метод concat не змінює this або будь-який з масивів, що передані як аргументи, але натомість повертає дрібну копію, яка містить копії тих самих елементів, об'єднані з початкових масивів. Елементи початкових масивів копіюються в новий масив таким чином:

Примітка: об'єднання масиву (масивів) чи значення (значень) не змінить початкові дані. Більше того, будь-яка операція над новим масивом (тільки якщо елемент не є посиланням на об'єкт) не матиме жодного впливу на початкові масиви, і навпаки.

Приклади

Об'єднання двох масивів

Наступний код об'єднує два масиви:

const letters = ['a', 'b', 'c'],
const numeric = [1, 2, 3];

letters.concat(numeric);
// Результат: ['a', 'b', 'c', 1, 2, 3]

Об'єднання трьох масивів

Наступний код об'єднує три масиви:

var num1 = [1, 2, 3],
    num2 = [4, 5, 6],
    num3 = [7, 8, 9];

var numbers = num1.concat(num2, num3);

console.log(numbers);
// Результат: [1, 2, 3, 4, 5, 6, 7, 8, 9]

Об'єднання значень у масив

Наступний код об'єднує три значення у масив:

var letters = ['a', 'b', 'c'];

var alphaNumeric = letters.concat(1, [2, 3]);

console.log(alphaNumeric);
// Результат: ['a', 'b', 'c', 1, 2, 3]

Об'єднанная вкладених масивів

Наступний код об'єднує вкладені масиви та демонструє утримання посилань:

const num1 = [[1]];
const num2 = [2, [3]];

const numbers = num1.concat(num2);

console.log(numbers);
// результат: [[1], 2, [3]]

// змінити перший елемент num1
num1[0].push(4);

console.log(numbers);
// результат: [[1, 4], 2, [3]]

Специфікації

Специфікація Статус Коментар
{{SpecName('ES3')}} {{Spec2('ES3')}} Початкове визначення. Реалізоване в JavaScript 1.2.
{{SpecName('ES5.1', '#sec-15.4.4.4', 'Array.prototype.concat')}} {{Spec2('ES5.1')}}
{{SpecName('ES6', '#sec-array.prototype.concat', 'Array.prototype.concat')}} {{Spec2('ES6')}}
{{SpecName('ESDraft', '#sec-array.prototype.concat', 'Array.prototype.concat')}} {{Spec2('ESDraft')}}

Сумісність із веб-переглядачами

{{Compat("javascript.builtins.Array.concat")}}

Див. також