Language/JavaScript

Js의 깊은 복사 얕은 복사

Developer Rio 2022. 11. 26. 22:41

1. const answer = Array(n).fill(Array(m).fill(0)) //얕은복사

2. const answer = Array(n).fill().map(()=>(Array(m).fill(0)))  //깊은 복사

 

행열이 n,m이고 0으로 찬 2차원 배열이 나오는데 1번은 Array(m).fill(0)의 참조변수 3개가 복사된 형태이고 2번은 각각의 행마다 배열이 생성 된 것이다.(1번은 하나의 숫자를 바꾸면 전체 행이 변경되게 된다.즉, 각 행에 존재하는 배열이 다 서로 같은 주소를 가지고 있다.)

 

아직 js에 익숙하지 않아서 쉬운 실수를 반복하는 하게 된다.

'Language > JavaScript' 카테고리의 다른 글

호이스팅  (0) 2022.12.17
JS / == 과 ===차이  (0) 2022.12.04
JS정규표현식  (0) 2022.11.14
PS시 유용한 JS메소드  (0) 2022.11.08
PS시 유용한 JS문법  (0) 2022.11.07