Les horodatages sont conservés en UTC. 1274203800000
correspond à 2010-05-18 17:30:00 UTC
, ce qui est en effet 2010-05-19 03:30:00 UTC+10
. Je ne sais pas comment vous obtiendriez 2010-05-18 03:30:00
à partir de cet horodatage - il faudrait que ce soit UTC-14, et aucun pays n'a cela comme fuseau horaire.
(A part. Dans votre code tel qu'il est, la première utilisation de new Date().getTime()
ne fait rien que ça va revenir le même milliseconds
)
ETA: Vous ne recevez aucun contrôle pas sur le format de toLocaleString()
, le format provient des paramètres du système d'exploitation et du navigateur de l'utilisateur. Sur ma machine ici, je reçois une horloge de 12 heures et un nom de fuseau horaire inclus. Ce qui est ennuyeux, car je pense que 12-hour time is a total disaster that should be wiped from the face of the planet et le fuseau horaire est vraiment faux. Mais de toute façon, si vous voulez un format d'heure spécifique, vous devrez le créer vous-même, car JS n'offre aucune option de formatage. Cela peut être assez fastidieux:
var daynames= ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'];
var monthnames= ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'];
function padLeft(s, l, c) {
return new Array(l-s.length+1).join(c || ' ')+s;
};
function to12HourTime(x) {
var dn= daynames[x.getUTCDay()];
var mn= monthnames[x.getUTCMonth()];
var d= padLeft(''+x.getUTCDate(), 2, '0');
var y= padLeft(''+x.getUTCFullYear() ,4, '0');
var h= x.getUTCHours();
var m= padLeft(''+x.getUTCMinutes(), 2, '0');
var s= padLeft(''+x.getUTCSeconds(), 2, '0');
var p= h>=12? 'PM' : 'AM';
h= (h+11)%12+1;
return dn+', '+mn+' '+d+', '+y+' '+h+':'+m+':'+s+' '+p;
}
var t= 1274203800000;
var d= new Date(t+1000*60*60*10);
alert(to12HourTime(d));
// Wednesday, May 19, 2010 3:30:00 AM
Eh bien, je ne savais pas vers UTC finalement si je si veux convertir 1274203800000 en GMT + 10 est alors il des options disponibles en javascript? – hunt
Vous avez déjà. '1274203800000' ** est ** 2010-05-19 03:30:00 UTC + 10'. Si vous utilisez le nombre '1274203800000' pour représenter une autre heure, alors ce que vous avez n'est pas un horodatage JavaScript standard, et vous devrez déterminer exactement ce que c'est. – bobince
Vous avez raison, c'est déjà +10 maintenant, comment puis-je le convertir en format 12hr? – hunt