alors j'abandonne ... j'ai essayé de le faire toute la journée;
J'ai une chaîne qui fournit une date et une heure au format dd/MM/yyyy hh:mm
(04/12/2012 07:00
).
Je dois transformer cela en date d'époque pour pouvoir effectuer certains calculs. Je ne peux pas modifier le format dans lequel la date et l'heure me sont envoyées.
JavaScript ou jQuery est bien.
Les dates JavaScript sont stockées en interne sous forme de millisecondes depuis Epoch. Vous devez simplement le convertir en nombre, par exemple. avec l'opérateur unaire +
, pour les obtenir. Ou vous pouvez utiliser la méthode .getTime
.
Le plus difficile sera d'analyser votre chaîne de date. Vous allez probablement utiliser une expression rationnelle pour extraire les valeurs de votre chaîne et les transmettre à Date.UTC
:
var parts = datestring.match(/(\d{2})\/(\d{2})\/(\d{4}) (\d{2}):(\d{2})/);
return Date.UTC(+parts[3], parts[2]-1, +parts[1], +parts[4], +parts[5]);
Cela donnera 1354604400000 ms
pour la date de votre exemple.
var someDate = new Date(dateString);
someDate = someDate.getTime();
Vous pouvez utiliser la bibliothèque momentjs pour le faire assez facilement.
var Epoch = moment(str).unix();
j'ai utilisé ce code pour convertir ma chaîne datetime en Epoch
new Date(<datetime string>').getTime()
par exemple :
let Epoch = new Date('2016-10-11').getTime()
var time = new Date().getTime() / 1000 + 900 + 330*60;
console.log("time = "+time);
getTime () retournera l'heure actuelle avec les millièmes de secondes dans les 3 derniers chiffres, divisez-la donc par 1000 en premier Maintenant, j'ai ajouté 900 moyens signifie 15 min dont j'ai besoin à partir de mon heure actuelle (vous pouvez supprimer si vous n'avez pas besoin de délai supplémentaire), 330 * 60 (5 h 30) est nécessaire pour convertir l'heure GMT en IST qui est ma région temps.
Utilisez le site ci-dessous pour tester votre temps: -
https://www.epochconverter.com/
J'espère que ça vous aidera :)
Ma réponse est de convertir l'heure actuelle en heure de la période en utilisant JavaScript
const currentDate = Math.floor (new Date ()/1000);
console.log (currentDate); // quelle que soit la valeur imprimée, vous pouvez vérifier la même valeur sur ce site Web https://www.epochconverter.com/ pour confirmer.