React/문법

[React] Array,object state 조작법

위르겐 2022. 5. 24. 13:42

이번에 프리미어리그 공동득점왕을 수상한 '살라'와 '손흥민'을

배열로 저장해

state로 조작해보겠다.

let [Top_player, setplayer] = useState(['살라', '손흥민']);

버튼을 만든 후

 

 

        <button className="change_btn" onClick={()=>{
          let copy = [...Top_player]
          copy[0] = copy[1]
          setplayer(copy)
        }}>눌러봐</button>

버튼 속성으로 onClick속성을 넣고

화살표 함수안에 지역변수로 배열을 새로 복사해준다

기존의 배열을 그대로 사용하지않고 따로 복사하는 습관을 들이는게 좋다

원본을 해치지 않기 때문

그리고

 

 

let copy = [...Top_player]

여기서 [... a] 은 스프레드 연산자로

쉽게 메모리의 주소값을 복사하는게 아니라

새로운 값을 복사해줄 수 있기 때문에

이렇게 사용하는게 합당하다.

만약 스프레드 연산자를 사용하지않는다면?

 

        <button className="change_btn" onClick={()=>{
          let copy = [Top_player]
          copy[0] = copy[1]
          setplayer(copy)
        }}>눌러봐</button>

안된다 ..

스프레드 연산자를 사용하자!

반응형

'React > 문법' 카테고리의 다른 글

[React] map 함수 사용  (0) 2022.05.25
[React] Component로 스위치 만들기  (0) 2022.05.24
[React] State로 버튼기능 생성  (0) 2022.05.11
[React] State  (0) 2022.05.09
[React] JSX문법  (0) 2022.05.09