JavaScript 에서 concat 복사 배열 방법 에 대한 분석

1413 단어
우 리 는 배열 복 제 를 해 야 할 때 다음 과 같은 방법 을 생각 할 수 있다.
코드

var arr1 = [1,2,3,4,5];

var arr2 = [];

arr2 = arr1;

console.log(arr1);

console.log(arr2);

실행 결 과 는 다음 과 같 습 니 다.

[1, 2, 3, 4, 5]

[1, 2, 3, 4, 5]

이 예 에서 배열 arr 1 을 다른 배열 arr 2 에 할당 합 니 다.
실행 결 과 를 보면 배열 의 내용 을 복사 하고 같은 배열 을 만 든 것 같 습 니 다.
그러나 배열 은 '참조 형식' 의 데이터 이기 때문에 이 값 을 복사 하지 않 고 이 값 을 저장 하 는 메모리 의 위 치 를 공유 합 니 다.
그래서 다음 코드 를 작성 하 겠 습 니 다.

arr2.push(6);

 

console.log(arr1);

console.log(arr2);

실행 결 과 는 다음 과 같다.

[1, 2, 3, 4, 5, 6]

[1, 2, 3, 4, 5, 6]

이상 의 결과 에 따 르 면 우리 가 arr 2 에 새 값 6 만 추가 하 더 라 도 배열 arr 1 에 6 을 추가 하 는 것 을 발견 할 수 있 습 니 다. 이것 은 바로 두 개 때 문 입 니 다.
배열 은 저장 값 의 위치 만 참조 하고 모든 배열 의 데 이 터 를 바 꾸 면 둘 다 달라 집 니 다.
그래서 다음은 concat 방법 으로 배열 을 복사 하 겠 습 니 다.
구체 적 인 예 시 를 살 펴 보 겠 습 니 다.

var arr1 = [1,2,3,4,5]; 

var arr2 = [];

  

arr2 = arr1.concat();

arr2.push(6);

 

console.log(arr1);

console.log(arr2);

실행 결 과 는 다음 과 같다.

[1, 2, 3, 4, 5]

[1, 2, 3, 4, 5, 6]

다른 배열 을 배열 arr 2 로 복사 하려 면 원본 arr 1 에서 concat () 를 실행 하면 됩 니 다.

좋은 웹페이지 즐겨찾기