JS/Javascript

[javascript] 배열 3-2(요소 조작) / 복사, 잘라내기, 붙여넣기(slice, concat, spread)

ui-o 2025. 9. 8. 14:16
반응형

slice(start, end)

  • 배열의 일부를 잘라내어 새로운 배열을 반환
  • 배열 일부 추출, 복사
  • 원본 배열은 변경 X

특징

  • start부터 end 전까지(즉, end는 포함 x) 잘라냄
  • end를 생략하면 배열 끝까지
  • 음수 가능 → 뒤에서부터 계산 (-1 → 마지막 요소)
// [문법]
배열.slice(시작인덱스, 끝인덱스(끝 인덱스 요소는 반환 X))
let arr = [10, 20, 30, 40, 50];

arr.slice(1, 3);   // [20, 30]  (인덱스 1~2)
arr.slice(2);      // [30, 40, 50]
arr.slice(-2);     // [40, 50]
arr.slice();       // 전체 복사 [10, 20, 30, 40, 50]

concat()

  • 배열을 합쳐서 새로운 배열 생성
  • 여러 배열이나 값을 순서대로 이어 붙임
  • 1단계(flat)까지만 합쳐짐 (깊은 중첩은 그대로 남음)
  • 원본 배열은 변경 X
  • 여러 배열 합치기 (ES5 방식)
// [문법]
배열.concat(값1, 값2, 배열1, 배열2, ...)
let arr1 = [1, 2];
let arr2 = [3, 4];

arr1.concat(arr2);        // [1, 2, 3, 4]
arr1.concat(5, [6, 7]);   // [1, 2, 5, 6, 7]
arr1;                     // 원본은 [1, 2]

Spread 연산자를 활용한 복사 + 합치기

 

[javascript] 전개 연산자(Spread Operator)

전개 연산자(Spread Operator) ... 문법을 사용해 배열, 객체, 문자열 등 반복 가능한(iterable) 값의 요소를 개별적으로 펼쳐서 전달하는 ES6 문법사용위치 : 함수 호출, 배열, 객체 리터럴 등에서 사용* it

u-pub.tistory.com

 

반응형