JavaScript에서 하루의 시작
현재 날짜의 시작을 포함하는 날짜 객체를 가져옵니다:
let now = new Date();
let date = new Date(now.getFullYear(), now.getMonth(), now.getDate(), 0, 0, 0);
이미 알고 있듯이, Date 객체의 매개변수는
끝에서 생략할 수 있습니다. 이 경우 시간,
분, 초는 0 값을 갖게 됩니다.
생략해 보겠습니다:
let now = new Date();
let date = new Date(now.getFullYear(), now.getMonth(), now.getDate());
그러나 날짜는 생략할 수 없습니다. 왜냐하면
생략하면 1 값을 취하게 되는데,
우리는 현재 날짜가 필요하기 때문입니다. 또한
Date 작업 규칙에 따라 연도를 생략하지 않고 월을
생략하는 것도 불가능합니다.
연도, 월, 날짜를 동시에 생략하는 것도
불가능합니다. 이 경우 현재 시점이
사용됩니다. 우리에게 필요한 것이 현재 연도,
현재 월, 현재 날짜인데 왜 이것이 좋지 않을까요?
문제는 우리에게 자정이 필요하다는 것입니다.
즉, 시간, 분, 초가 0 값을 가져야 하지만,
현재 시점에서는 자정이 아닌 현재 값으로
설정된다는 점입니다.
하루의 시작과 현재 시점 사이에 경과된 시간(시간)을 구하세요.