2009-06-19 7 views

Répondre

3

Comme thomasrutter a déclaré que les fonctions de date javascript dépendent de la machine du client. Toutefois, si vous souhaitez obtenir une date faisant autorité, vous pouvez effectuer une requête ajax sur votre serveur qui renvoie simplement la chaîne de date. Vous pouvez ensuite convertir la chaîne de date en un objet date avec le code suivant

var ds = ... // Some ajax call 
var d = new Date(ds); 
3

Les méthodes font ce qu'elles sont documentées à faire. La meilleure façon d'obtenir des informations UTC est évidemment d'utiliser les méthodes UTC:

getUTCFullYear(), getUTCMonth(), getUTCDate(), etc.

2

ou si, Javascript étant un langage côté client, ils dépendent de ce que le La machine client a sa date définie sur.

Oui, c'est correct.

Si cela dépend de l'ordinateur client, quel est le meilleur moyen d'obtenir l'heure universelle correcte?

Pour obtenir l'heure/la date d'une source faisant autorité, pas à partir d'une machine client.

+0

Les données de temps client ne sont pas fiables pour les applications critiques. Mais je pense que le PO le sait déjà. –

+2

Existe-t-il une source faisant autorité qui expose une API? – rick

+0

Il serait préférable de le faire vous-même en faisant synchroniser votre serveur en utilisant ntp. –

8

Javascript en sait seulement autant sur l'heure exacte que l'environnement dans lequel il fonctionne actuellement, et Javascript est client-side. Donc, Javascript est à la merci de l'utilisateur ayant l'heure correcte, et le fuseau horaire, les paramètres sur le PC sur lequel ils naviguent.

Si l'utilisateur a le fuseau horaire incorrect, mais l'heure correcte, alors les fonctions en fonction des fuseaux horaires comme getUTCDate() seront incorrectes.

Si l'utilisateur a l'heure incorrecte, alors toutes les fonctions liées au temps dans Javascript seront incorrectes.

On pourrait faire l'argument, cependant, que si l'utilisateur voulait des heures correctes sur leur PC, ils auraient réglé l'heure correcte. Le contraire à cela est que l'utilisateur peut ne pas savoir comment faire cela.

Questions connexes