T I L / 6월 24일

Jay·2020년 6월 24일
0

Today I Learned 🧐

목록 보기
47/71
post-thumbnail

깊은 복사

let df = 6
let fg = df

df = 7
console.log(df, fg)  // 7, 6

얕은 복사

let fst = [1,2,3]
let scd = fst
fst[0] = 5

console.log(fst)   // [5,2,3]
console.log(scd)   // [5,2,3]

깊은 복사 : 기본 자료형 값(String, Number, Boolean)을 복사할 때는 깊은 복사가 된다. 깊은 복사란 값을 복사 한 뒤 각각 완전히 독립적인 객체가 되는 것을 의미한다.
얕은 복사 : 나머지 자료형을 복사할 때는 방법은 같더라도 얕은 복사가 된다. 얕은 복사란 깊은 복사처럼 똑같은 값을 각각 메모리에 저장하는 것이 아니라, 메모리를 공유하는 것이다. 복사할 때 값을 복사하는 것이 아니라, 메모리의 위치를 복사하는 것이다. 그래서 위 예시에서 변수 fst를 수정하든, scd를 수정하든 두 변수의 값이 같을수 밖에 없다.

profile
You're not a computer, you're a tiny stone in a beautiful mosaic

0개의 댓글