Existe-t-il un moyen simple d'obtenir l'horodatage Unix en javascript depuis un fuseau horaire spécifique? Par exemple, je veux que le client m'envoie un timestamp Unix, mais je veux que cela corresponde à mon fuseau horaire.
Merci!
Pourquoi ne pas simplement envoyer la date en UTC, puis convertir dans votre fuseau horaire sur le serveur?
var utcEpochSeconds = dateObj.getTime() + (dateObj.getTimezoneOffset() * 60000);
Pour que cela se produise, vous devez appliquer le décalage du fuseau horaire à l'heure, puis supprimer votre décalage de la valeur (testez ceci, je suppose que la mémoire):
var now = new Date(), offset = -(now.getTimezoneOffset() * 60 * 1000), // now in milliseconds userUnixStamp = +now + offset;
Maintenant décalé par rapport à vous-même:
var now = new Date(), offset = now.getTimezoneOffset() * 60 * 1000, yourUnixStamp = userUnixStamp - offset;
Utilisez la toISOString
pour obtenir un horodatage UTC.
var date = new Date(); date.toISOString(); // EST would be 6 hour diff from GMT