Sto cercando di passare entrambe le stringhe di data a new Date(t)
.
Mi aspetto che entrambe le stringhe rappresentino la stessa ora, dopotutto, se ometto l'ora, non dovrebbe essere la mezzanotte di quel giorno?
Ma mentre,
new Date("2016-02-16 00:00")
restituisce 2016-02-16, mezzanotte, ora locale come previsto,
new Date("2016-02-16")
restituisce 2016-02-16, mezzanotte UTC, che è sbagliato, o almeno non è quello che mi aspettavo visto come viene analizzata l'altra stringa.
Lo capirei se entrambi avessero lo stesso comportamento, sia che si tratti di restituire l'ora come ora locale o come UTC, ma sembra molto incoerente il motivo per cui restituiscono cose diverse come questa.
Come soluzione alternativa, ogni volta che incontro una data che non ha un timestamp corrispondente, posso aggiungere "00:00" per ottenere un comportamento coerente, ma sembra che sia piuttosto fragile.
Sto ottenendo questo valore da un elemento INPUT, di tipo "datetime-local", quindi sembra particolarmente incoerente che devo aggirare un valore restituito da un elemento di pagina.
Sto facendo qualcosa di sbagliato o dovrei fare qualcosa di diverso?
2016-02-16 00:00
- questo non sembra affatto l'ora valida. ecma-international.org/ecma-262/6.0/… , ma anche dopo averlo inseritoT
si comporta effettivamente in modo diverso