728x90
반응형
질문 : 값으로 배열 복사
JavaScript의 배열을 다른 배열로 복사하는 경우 :
var arr1 = ['a','b','c'];
var arr2 = arr1;
arr2.push('d'); //Now, arr1 = ['a','b','c','d']
arr2
가 새로운 독립 배열이 아니라 arr1
과 동일한 배열을 참조한다는 것을 깨달았습니다. 두 개의 독립적 인 배열을 얻기 위해 배열을 복사하려면 어떻게해야합니까?
답변
이것을 사용하십시오 :
let oldArray = [1, 2, 3, 4, 5];
let newArray = oldArray.slice();
console.log({newArray});
기본적으로 slice()
작업은 배열을 복제하고 새 배열에 대한 참조를 반환합니다.
다음 사항도 참고하십시오
참조, 문자열 및 숫자 (실제 객체가 아님)의 경우 slice()
는 객체 참조를 새 배열로 복사합니다. 원래 배열과 새 배열은 모두 동일한 객체를 참조합니다. 참조 된 객체가 변경되면 변경 사항이 새 배열과 원래 배열 모두에 표시됩니다.
문자열 및 숫자와 같은 프리미티브는 변경할 수 없으므로 문자열이나 숫자를 변경할 수 없습니다.
출처 : https://stackoverflow.com/questions/7486085/copy-array-by-value
728x90
반응형
'프로그래밍 언어 > HTML,CSS,JS' 카테고리의 다른 글
동적으로 명명 된 속성을 JavaScript 개체에 추가 하는 방법 (0) | 2021.11.16 |
---|---|
JavaScript에서 문자열을 여러 번 반복하는 방법 (0) | 2021.11.16 |
JavaScript에서 상수를 사용하는 방법 (0) | 2021.11.15 |
JavaScript 배열에서 마지막 요소 선택 (0) | 2021.11.15 |
JavaScript 삼항연산자를 사용하는 방법 (0) | 2021.11.15 |