const d1 = new Date(2024, 1, 23);
const d2 = d1;
d2.setFullYear(2023);
console.log(d1);
console.log(d2);
실행결과:
Thu Feb 23 2023 00:00:00 GMT+0900 (한국 표준시)
Thu Feb 23 2023 00:00:00 GMT+0900 (한국 표준시)
d2의 값을 바꾸려는 의도의 코드이나 실행 결과를 보면 d1도 바뀌는, 즉 파이썬에서 흔히 보던 얕은 복사 이슈가 발생한다.
const d1 = new Date(2024, 1, 23);
const d2 = new Date(d1);
DateConstructor에다가 Date 객체를 넣으면 깊은 복사가 된다.