• 로그인
  • 장바구니에 상품이 없습니다.

home2 게시판 React 게시판 react 깊은복사 얕은복사에 대한 질문입니다

react 깊은복사 얕은복사에 대한 질문입니다

2 글 보임 - 1 에서 2 까지 (총 2 중에서)
  • 글쓴이
  • #26999

    김현지
    참가자

    숙제해설 : 블로그 수정버튼 만들기 강좌에서 

    usestate값을 변경하고싶을때, '='을 이용하여 단순 참조를 하게 하면 안되고 

    deepCopy 를 하게하여 [... 배열] 용법을 써서 배열을 복사하되 값을 공유하지는 않게하여 새로운 배열을 만들고, 그 배열을 

    새로 세팅해주라는 설명까지는 이해했습니다

     

    하지만, 곰곰히 생각해보니 = 를 이용해서 값을 공유하게 해서  

    function 제목바꾸기() {

      var newArray = 글제목; 

      newArray[0] = '여자코트 추천';

      글제목변경( newArray ); 

    }

    위와 같이 함수를 짜더라도, newarray[0]값이 가리키는

    let [글제목, 글제목변경] = useState( ['남자코트 추천', '강남 우동맛집', '파이썬 독학'] ); 

    글제목[0]에 같은 값을 공유하게되어 수정은 가능할수 있어야하는 것 아닌가요?

     

    그리고 그렇게 될경우, 글제목변경( newArray ); 이 작업을 따로 안해줘도 되는 것 아닌가요?? 

     

    #27013

    codingapple
    키 마스터

    리액트는 기존 state == 신규 state 이렇게 등호로 비교해서 state가 바뀌었는지 감지합니다 

    newArray[0] = '여자코트 추천';  이렇게 바꿔도 

    newArray == 기존 state 해보면 다르지 않고 같다고 나옵니다

    그래서 리액트는 state가 안바뀌었다고 생각합니다 

2 글 보임 - 1 에서 2 까지 (총 2 중에서)
  • 답변은 로그인 후 가능합니다.

About

현재 월 700명 신규수강중입니다.

  (09:00~20:00) 빠른 상담은 카톡 플러스친구 코딩애플 (링크)
  admin@codingapple.com
  이용약관, 개인정보처리방침
ⓒ Codingapple, 강의 예제, 영상 복제 금지
top

© Codingapple, All rights reserved. 슈퍼로켓 에듀케이션 / 서울특별시 강동구 고덕로 19길 30 / 사업자등록번호 : 212-26-14752 온라인 교육학원업 / 통신판매업신고번호 : 제 2017-서울강동-0002 호 / 개인정보관리자 : 박종흠