--- title: Array.prototype.concat() slug: Web/JavaScript/Reference/Global_Objects/Array/concat tags: - Array - JavaScript - Method - Prototype - Reference translation_of: Web/JavaScript/Reference/Global_Objects/Array/concat ---
{{JSRef}}

concat() 메서드는 인자로 주어진 배열이나 값들을 기존 배열에 합쳐서 새 배열을 반환합니다. 

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

구문

array.concat([value1[, value2[, ...[, valueN]]]])

매개변수

valueN {{optional_inline}}
자세한 내용은 아래 설명을 참고하세요.

반환값

새로운 {{jsxref("Array")}} 객체.

설명

concat은 메서드를 호출한 배열 뒤에 각 인수를 순서대로 붙여 새로운 배열을 만듭니다. 인수가 배열이면 그 구성요소가 순서대로 붙고, 배열이 아니면 인수 자체가 붙습니다. 중첩 배열 내부로 재귀하지 않습니다.

concatthis나 인수로 넘겨진 배열의 내용을 바꾸지 않고, 대신 주어진 배열을 합친 뒤 그 얕은 사본을 반환합니다. 새 배열에는 원본 배열의 요소를 다음과 같은 방법으로 복사합니다.

참고: 배열이나 값을 이어붙여도 원본은 변하지 않으며, 새로운 배열이나 원본 배열을 조작해도 서로 영향을 받지 않습니다.

예제

배열 두 개 이어붙이기

다음 예제는 두 개의 배열을 이어붙입니다.

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

alpha.concat(numeric);
// 결과: ['a', 'b', 'c', 1, 2, 3]

배열 세 개 이어붙이기

다음 예제는 세 개의 배열을 이어붙입니다.

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

num1.concat(num2, num3);
// 결과: [1, 2, 3, 4, 5, 6, 7, 8, 9]

배열에 값 이어붙이기

다음 코드는 배열에 세 개의 값을 이어붙입니다.

const alpha = ['a', 'b', 'c'];

alpha.concat(1, [2, 3]);
// 결과: ['a', 'b', 'c', 1, 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")}}

같이 보기