web-dev-qa-db-fra.com

new Date (millisecondes) renvoie Date invalide

J'essaie de convertir les millisecondes en date à l'aide du javascript à l'aide de:

new Date(Milliseconds); 

constructeur, mais lorsque je lui donne une valeur en millisecondes, disons 1372439683000, il renvoie une date non valide. Si je vais sur un site qui convertit les millisecondes en date il renvoie la date correcte.

Des idées pourquoi?

42
user1634451

Vous n'utilisez pas un nombre, vous utilisez un string qui ressemble à un nombre. Selon MDN, lorsque vous passez une chaîne dans Date , il attend

un format reconnu par la méthode d'analyse (horodatage RFC 2822 conforme à l'IETF).

Un exemple d'une telle chaîne est "December 17, 1995 03:24:00", mais vous passez une chaîne qui ressemble à "1372439683000", qui ne peut pas être analysée.

Convertissez Milliseconds en un nombre utilisant parseInt ou un + unaire:

new Date(+Milliseconds); 
new Date(parseInt(Milliseconds,10)); 
78
apsillers

La fonction Date est sensible à la casse:

new Date(Milliseconds); 
5
ic3b3rg

au lieu de cela

new date(Milliseconds); 

utilisez ceci

new Date(Milliseconds); 

votre déclaration vous donnera la date n'est pas définie error

1
Sachin