본문 바로가기
공부 정리/웹(Web)

Js Array.from은 Shallow-copy인가?

by 경적필패. 2023. 1. 20.
반응형

글작성 동기

MDN에 보면, Array.from은 shallow-copied라고 나와있는데,

mdn1

해당 사진에서보면, false가 나오고, deep copy처럼 동작합니다.

 

shallow copy vs deep copy

같은 메모리를 참조하면 shallow copy, 모든 값을 복사해서 다른 메모리를 참조하면 deep copy인줄 알았으나 한가지 예외가 있었습니다.

첫 한단계만 복사하고 나머지 메모리 주소가 같은 경우도 shallow copy라고 칭하였습니다.

따라서

 

mdn2
mdn3

다음 처럼 작동하는 것을 볼 수 있었습니다.

 

결론

Array.from은 shallow copy가 맞다 !

 

 

참고

https://velog.io/@lemuel0525/shallow-copy-deep-copy

 

[JS] shallow copy / deep copy

pass by Reference와 이어지는 글입니다.shallow copy(얕은 복사)와 deep copy(깊은 복사) 모두 복사한 대상에 대해서 새로운 객체를 생성하여 기존 객체에는 영향을 주지 않습니다. 그러나, 얕은 복사는 한

velog.io

 

반응형

'공부 정리 > 웹(Web)' 카테고리의 다른 글

HTTPS 적용기 (...SSL/TLS)  (0) 2023.02.27
js challenge day 20  (0) 2023.02.20
[typescript] type Vs interface  (0) 2023.01.04
useMemo, useCallback  (0) 2023.01.02
react key prop  (0) 2022.12.29

댓글