[Javascript] 내장 객체(Date, Math) 실습

Gammi·2022년 10월 1일
0

JS

목록 보기
9/22
post-thumbnail

D-Day 계산기 만들기

var now = new Date();
var target = new Date("2022-10-03");
// 오늘 날짜와 대상 날짜 정해주기

var nowGetTime = now.getTime();
var targetGetTime = target.getTime();
// getTime() 메서드를 활용하여 밀리초로 변환

var calculate = nowGetTime - targetGetTime;
// 오늘 날짜와 대상 날짜의 차이 구해주기
// 밀리초로 계산되어 나오기 때문에 일수로 다시 바꿔줘야 함

var convertTime = Math.round(calculate / (1000*60*60*24));
// Math 객체 중 round() 메서드를 이용하여 일수로 바꿔주기
// (1000*60*60*24) 나누기 해줘야함

if(convertTime > 0) {
  // 0보다 크다는 것은 대상 일자가 과거라는 말
  document.write(convertTime + "일 지났습니다.);
} else if(convertTime < 0) {
  // 0보다 작다는 것은 대상 일자가 미래라는 말
  // 그대로 출력할 경우 음수로 나오기 때문에 양수로 변환 필요
  // Math 객체의 abs() 메서드 활용
  document.write(Math.abs(convertTime) + "일 남았습니다.);
} else {
  document.write("D-Day입니다.);
}

-> 무슨 오류인지는 모르겠는데 처음에 if문만 쓰면 convertTime에 20이 더해진 숫자가 나왔다. 이거 학원에서도 그랬던 것 같은데...

학원에서는 뭐 하니까 정상적으로 나왔는데 뭘 했었는지 까먹어서 그냥 다시 if문 썼더니 정상적으로 출력되더라

F12번 눌러도 나오는 오류가 없으니까 너무 답답... 내가 잘못한 건지 제대로 프로그램이 안 돌아간 건지... 근데 프로그램이 잘못 돌아갈 일이 있나? 내가 잘못했을 확률이 더 크니까 오류난 코드랑 정상적으로 출력된 코드랑 비교해봤는데 100% 똑같음...

대체 문제가 뭐야...😭😭😭😭

profile
개발자가 되었어요⭐️

0개의 댓글