성능 및 메모리 관리 측면에서 유리!
얕은 복사는 객체나 배열을 복사할 때 해당 객체나 배열의 참조만을 복사하므로 복사된 객체와 원본 객체는 동일한 참조를 공유합니다.
==> 복사된 객체를 수정하면 원본 객체도 영향을 받음
얕은 복사의 주요 장점
1. 성능개선: 깊은 복사는 복잡한 객체나 중첩된 구조의 데이터를 복사할 때 시간이 오래 걸릴 수 있다.
얕은 복사는 객체의 참조만 복사하므로 간단하고 빠르게 수행됩니다.
2. 메모리 절약: 깊은 복사는 복사된 객체와 원본 객체가 완전히 분리되어 메모리를 더 사용한다.
얕은 복사는 참조만 복사해서 메모리를 덜 사용한다.
3.유연성: 얕은 복사를 사용하면 복사된 객체와 원본 객체가 연결되어 있기 때문에 한 쪽을 수정하면 다른 쪽도 반영됩니다.
=> 실시간으로 원본데이터를 업데이트 할 수 있는 유연성을 제공한다.
얕은 복사는 -> 단순한 데이터 구조를 다룰 때
깊은 복사는 -> 복잡한 객체나 중첨된 구조를 다룰 때
예시
setData((prevState) => ({
...prevState,
script: {
...prevState.script,
domain: title
}
}));
'프론트엔드 > 리액트' 카테고리의 다른 글
jwt , 세션인증 비교 (0) | 2023.07.25 |
---|---|
리액트에서 useQuery를 사용하는 이유 & 예시 (0) | 2023.04.28 |
리액트로 json server 만들기 (1) | 2023.04.20 |
리액트로 도넛모양차트 하이차트, +annotation 옵션 구현 (0) | 2023.04.13 |
리액트로 이미지 다운로드(html-to-image) (0) | 2023.04.10 |