2013-05-21 2 views

Répondre

3

Il ressemble à une donnée d'époque en millisecondes:

var ms = 1369519200000; 
var d = new Date(0); 
d.setMilliseconds(ms); 

d est maintenant « sam 25 mai 2013 22:00:00 GMT »(via d.toUTCString()), qui sonne, espérons-ce que vous pourriez attendre.

Cela ne prend pas en compte les fuseaux horaires; si vous connaissez la date est UTC, vous pouvez utiliser setUTCMilliseconds à la place, ou tout simplement:

var d = new Date(ms); 

Mais vous avez probablement besoin de savoir exactement ce que le service Web vous envoie donc vous savez que vous interpréter correctement la date - si vous besoin d'appliquer des ajustements de fuseau horaire ou d'heure d'été, par exemple.

Aucune idée de sa fiabilité générale, mais this article comprend quelques informations sur la gestion des données, y compris ce que les moyens de la date de l'époque.

+0

comment êtes-vous sûr que c'est une valeur de milliseconde? parce que j'ai regardé d'autres messages qui expliquent une conversion en millisecondes et ils ont des valeurs beaucoup plus courtes, ie: valeurs int – pythonian29033

+0

@ pythonian29033 - Je suis assez sûr juste parce qu'il se termine en '000' et est assez long, et aussi sûr que je peux être sans voir les données brutes dans la base de données, parce que quand je le traiter comme on le convertit à ce qui ressemble à une date raisonnable. Peut-être que les messages que vous avez regardés utilisaient une époque différente, ou ont commencé avec des secondes et multiplié par 1000 pour obtenir des millisecondes (que j'ai vu dans Unix-land). Le service Web ne définit-il pas ce qu'il envoie du tout? –

+0

pas de soucis, il a travaillé, l'homme merci – pythonian29033

0

On dirait qu'il est en nombre de millisecondes depuis l'époque UNIX (minuit 1970).

Si vous pouvez obtenir cette valeur comme un entier que vous pourriez faire quelque chose comme ceci:

var dbDate = new Date(0); // start out at time 0, i.e. the unix epoch 
dbDate.setUTCSeconds(millisSinceEpoch/1000); 
Questions connexes