web-dev-qa-db-fra.com

Convertit une chaîne de 12 heures (AM / PM) en objet Date 24 en utilisant le moment js

J'ai une sortie résultant d'un timepicker donnant le format 12 heures.

Eg : "1:45 AM (or) "12:15 PM" as **string**

Existe-t-il un moyen d’analyser ce format de chaîne sur 24 heures en utilisant le moment js back to date?

38
ram

Voir la documentation de moment js parse function

JSFiddle

var dt = moment("12:15 AM", ["h:mm A"]).format("HH:mm");
89
Pochen

Je sais que cette réponse n’est pas de la question (en fait, c’est le cas contraire), mais je vais la poser pour la compléter et si quelqu'un (comme moi) la cherchait.
Si vous voulez convertir le 24 Hour system à 12 Hour system alors vous pouvez utiliser ce qui suit

return moment("13", ["HH"]).format("hh A");

le code précédent produira le résultat 1 PM

9
Hakan Fıstık

Dans le calendrier complet pour afficher l'heure au format 12 heures comme 01:00 PM j'ai utilisé le format suivant - timeFormat: 'hh: mm A'. "TimeFormat" est la propriété des événements de fullcalender.

Même format 'hh: mm A', nous pouvons utiliser pour formater un objet datetime en utilisant momentjs.

1
Ravindra Vairagi
var today = new Date();
let options = {  
    hour: "2-digit", minute: "2-digit"  
};  
console.log(today.toLocaleTimeString("en-us", options));
0
Priyanka Shirsath
moment("145","hmm").format("HH:mm");

cela donnerait 01:45

0
Prashanti.D

/ * * Terminez la fonction timeConversion ci-dessous. * /

function timeConversion(s) {
    let time = s.split(':')
    var min = time[1]
    if (s.match('PM')) {
        var hour = 12 + parseInt(time[0], 10)
        hour = hour == 24 ? 12 : hour;
        var sec = time[2].replace('PM', '')
    } else {
        var hour = time[0]==12?'00':time[0]
        var sec = time[2].replace('AM', '')
    }
    if (hour < 10) hour = hour;
    let newTime = hour + ':' + min + ':' + sec
    return newTime
}
0
ABHISHEK GUPTA