본문 바로가기

프로그래밍/[javascript] 자바스크립트

[javascript] 배열 복사 copyWithin() 함수

by GenieIT* 2024. 11. 7.

728x90
728x90

 

1. copyWithin() 메서드

  • JavaScript의 copyWithin() 메서드는 배열 내부의 요소를 복사하여 동일한 배열 내 다른 위치에 붙여 넣는 메서드입니다. 이때 기존의 배열 길이는 변경되지 않고, 배열을 수정한 후 해당 배열을 반환합니다.
  • 동일한 배열 내에서 지정된 부분을 복사하여 다른 위치에 덮어씁니다.
  • 복사는 항상 앞에서 뒤로 진행되며, 배열의 길이는 변경되지 않습니다.
  • 음수 인덱스는 배열의 끝에서부터 역으로 계산됩니다.

 


 

2. 문법

  • target: 복사한 요소를 붙여 넣을 위치의 인덱스. (음수는 배열의 끝에서부터 계산)
  • start (선택 사항): 복사를 시작할 위치의 인덱스. 기본값은 0
  • end (선택 사항): 복사를 종료할 위치의 인덱스 (포함하지 않음). 기본값은 배열의 길이
array.copyWithin(target, start, end)

 


 

3. 사용 예제

3-1. start 지정하기

let arr = [1, 2, 3, 4, 5];
arr.copyWithin(0, 3); // target = 0, start = 3, end = arr.length

console.log(arr);

 

 

 

3-2. start와 end 지정하기

let arr = [1, 2, 3, 4, 5];
arr.copyWithin(1, 2, 4); // target = 1, start = 2, end = 4

console.log(arr);

 

 

 

3-3. 음수 인덱스 지정하기

let arr = [1, 2, 3, 4, 5];
arr.copyWithin(-2, -4, -1); // target = -2, start = -4, end = -1

console.log(arr);

 

 

 

3-4. 배열 일부를 반복하여 채우기

let arr = [1, 2, 3, 4, 5, 6];
arr.copyWithin(3, 0, 3); // 배열의 앞 3개의 요소를 인덱스 3부터 붙여넣기

console.log(arr);

 

 

 

728x90