Date 함수 질문
set 함수를 이용해 현재 년도, 월, 일, 시간, 분, 초 등을 설정할 수 있다고 배웠습니다.
var day = new Date();
day.setFullYear(2020);
console.log(day); // Sat Dec 05 2020 14:51:11 GMT+0900 (한국 표준시)수업 내용처럼 코드를 작성하면 년도 값이 달라져서 나오는데, 아래 코드처럼 작성하면 "912837772073" 이라는 결과가 나옵니다.
두 코드의 차이가 무엇인지, 어떤 점이 잘못되어 해당 결과 값이 나오는지 궁금합니다..!
var day = new Date();
console.log(day);
var day2 = day.setFullYear(1998);
console.log(day2);
Answer 1
1
자바스크립트의 Date 객체와 setFullYear 메소드에 대한 질문에 답변드리겠습니다.
첫 번째 코드에서는 new Date()를 사용하여 현재 날짜와 시간을 나타내는 Date 객체를 생성합니다.
이후 setFullYear(2020) 메소드를 사용하여 해당 객체의 년도를 2020으로 설정했습니다..
console.log(day)를 통해 수정된 Date 객체를 출력하면, 년도가 2020으로 설정된 전체 날짜와 시간이 출력됩니다.
여기까지는 잘 이해하신것 같습니다.
두 번째 코드에서는 동일하게 new Date()로 Date 객체를 생성한 후, setFullYear(1998)을 사용하여 년도를 1998로 설정했습니다.. 그러나, 이 코드에서는 setFullYear 메소드의 반환값을 day2 변수에 할당합니다.
setFullYear 메소드는 수정된 Date 객체를 반환하는 것이 아니라, 수정된 날짜의 타임스탬프(1970년 1월 1일 00:00:00 UTC부터 경과된 밀리초 수)를 반환합니다.
따라서 console.log(day2)를 통해 출력되는 값은 1998년으로 설정된 날짜의 타임스탬프입니다.
결론적으로, 두 코드의 주요 차이점은 반환값의 처리 방식에 있습니다. 첫 번째 코드에서는 Date 객체 자체를 출력하는 반면, 두 번째 코드에서는 setFullYear 메소드의 반환값인 타임스탬프를 출력합니다. 이 때문에 두 번째 코드에서는 예상과 다른 숫자 값이 출력된 것입니다.
외부 라이브러리 사용 질문
0
157
1
module 질문있습니다.
0
586
1
clearInterval, setInterval 질문
1
460
1
window 객체 질문 있습니다.
0
223
1
Boolean 내장함수 강의 질문
0
323
1
4-04(마지막강의)에 있는 json으로 된 js파일은 어디에 있을까요?
0
412
1
Async Await 오류가 나서 문의드립니다.
0
566
2
선생님 안녕하세요. array내장함수 수업듣는중 이해가 안되는 부분이있어서 질문드립니다.
0
338
1
변수 관련 질문
0
288
1
Promis실습 도중의 에러메시지
0
450
2
moment.js cdn 외부 링크 오류
0
1468
1
64비트 부동소수점 내용 중
0
462
1
4-04 22분 15초에 나오는 61, 63 라인에 대해 질의드립니다.
0
253
1
64비트부동소수점 마지막부분 이해가 안가서요...
0
217
1
Chcekbox Element 값
0
228
1
parameter순서
0
468
1
parseInt parseFloat 질문
0
213
1
charAt 인덱스
0
219
0
STRING 결합
0
231
0
왜 오름차순으로 정렬되는지 궁금합니다.
0
246
1
HTML를 위한 자바스립트 4-01.HTML Element.html
0
349
1
함수 강의에서 8:47초 부분 질문 있습니다.
0
227
1
정규식 관련해서 질문이 있습니다.
1
310
2
module강의의 예제 코드를 사용하면 에러가 생겨서 질문드립니다.
0
375
1

