두 날짜 문자열을 모두 new Date(t)
.
두 문자열이 같은 시간을 나타내기를 기대합니다. 결국 시간을 생략하면 그날 자정이 아니겠습니까?
하지만
new Date("2016-02-16 00:00")
예상대로 2016-02-16, 자정, 현지 시간을 반환합니다.
new Date("2016-02-16")
2016-02-16, 자정 UTC를 반환합니다. 이는 잘못되었거나 다른 문자열이 구문 분석하는 것을 고려할 때 내가 예상했던 것과는 다릅니다.
시간을 현지 시간으로 반환하든 UTC로 반환하든 둘 다 동일한 동작을한다면 이해할 수 있지만, 이와 같이 다른 것을 반환하는 이유는 매우 일관성이 없어 보입니다.
해결 방법으로 해당하는 타임 스탬프가없는 날짜를 발견 할 때마다 "00:00"을 추가하여 일관된 동작을 얻을 수 있지만 이것은 다소 취약한 것처럼 보입니다.
'datetime-local'유형의 INPUT 요소에서이 값을 얻고 있으므로 페이지 요소에서 반환 된 값을 처리해야하는 것이 특히 일치하지 않는 것 같습니다.
내가 뭘 잘못하고있는 건가요, 아니면 다르게해야할까요?
2016-02-16 00:00
-이것은 전혀 유효한 시간처럼 보이지 않습니다. ecma-international.org/ecma-262/6.0/… ,하지만T
거기에 넣어도 실제로 다르게 동작합니다