2016-08-29 18 views
1

Ich versuche, die Zahl in Minuten mit Moment js zu konvertieren. Ich braucheWie Zahlen in Zeitformat in Javascript konvertieren

21 to to look like 21:00 

Auf diese Weise für meinen eingestellten Intervall zeigt der Timer 19:58 bis 0:01.

I

var x = 1260000; 
    var d = moment.duration(x, 'milliseconds'); 
    var hours = Math.floor(d.asHours()); 
    var mins = Math.floor(d.asMinutes()) - hours * 60; 

versucht hatte, Das lässt mich immer noch mit 21. Ich bin nicht sicher, wie die Minuten Form zu erhalten.

Das scheint wie eine kurze Lösung zu sein. Jede Hilfe wird sehr geschätzt.

+0

Sie können dies tun, ohne moment.js mit dem Standardkonstruktor: * var d = new Datum (Jahr, Monat, Tag, Stunden, Minuten, Sekunden, Millisekunden); * – Robert

+0

Können Sie uns geben, welche Eingabe Sie haben und welche Ausgabe Sie versuchen bekommen? Es ist ziemlich schwer, deinen Code ohne den Kontext zu trennen. – Whothehellisthat

+0

Sorry wenn das nicht klar ist. Ich versuche, die Millisekunden zu bekommen, um wie 21:00 aussehen. Ich brauche einen Countdown bis 0:01. Aber ich bekomme immer nur 21 – Winnemucca

Antwort

1

Sie dieses Beispiel für die Formatierung in momentjs Homepage kann in ähnlicher Weise können Sie Ihr Problem

moment().format('MMMM Do YYYY, h:mm:ss a'); // August 29th 2016, 3:11:31 pm 
moment().format('dddd');     // Monday 
moment().format("MMM Do YY");    // Aug 29th 16 
moment().format('YYYY [escaped] YYYY');  // 2016 escaped 2016 

http://momentjs.com/

+2

Dies beantwortet die Frage nicht. Wenn Sie auf die verschiedenen Formate zeigen möchten, können Sie sie in einen Kommentar zu der Frage einfügen. –

+0

Kumpel Siehe die erste Zeile des Codes. –

0

lösen Wie man ein neues Moment Objekt von Stunden-Zeichenfolge erstellen und als HH anzuzeigen: MM:

var input = '21'; moment(input,'HH').format('HH:mm'); // 21:00

+0

Vielen Dank. Ich habe jedoch versucht, dies in eine Zahl umzuwandeln. Ich habe Parse Int versucht und es gibt mir 21 zurück. – Winnemucca

+0

Können Sie genau erklären, was Sie in Nummer konvertieren möchten? Frage war wie _ "Ich brauche ' 21, um wie 21: 00' "_ –

+0

auszusehen Bitte bearbeiten Sie mit mehr Informationen. Code-only und "try this" Antworten werden abgeraten, da sie keine durchsuchbaren Inhalte enthalten und nicht erklären, warum jemand "das versuchen sollte". – abarisone

1
var moment = require("moment") 
var x = 1260000; 
var d = moment.duration(x, 'milliseconds'); 
moment(d.asMinutes(),'mm').format('mm:ss'); 
1

Sie können moment-duration-format Plug-In und Dauer subtract Methode verwenden.

Mit dem Plug-In können Sie das Dauerobjekt formatieren und mit der Methode können Sie den Wert für die Dauer ändern.

Hier ist ein funktionierendes Beispiel, die Ihnen helfen können:

var $container = $('#timer'); 
 

 
var x = 1260000; 
 
var d = moment.duration(x, 'milliseconds'); 
 

 
var intervalId = setInterval(function(){ 
 
    d.subtract(1, 's'); 
 
    if(d.seconds() >= 0){ 
 
    var timer = d.format('m:ss', { trim: false }); 
 
    $container.html(timer); 
 
    } else { 
 
    clearInterval(intervalId); 
 
    } 
 
}, 1000);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<script src="//cdnjs.cloudflare.com/ajax/libs/moment.js/2.13.0/moment.min.js"></script> 
 
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment-duration-format/1.3.0/moment-duration-format.min.js"></script> 
 

 
<div id="timer"></div>

2
var number = 15; 
moment(number.toString(),"LT") 

Ausgabe 15:00

andere Methode var Wert = 6,8 (exemple: 34/5 (34 Stunden Arbeit/5 Tage)) /** * Convertion d'un nombre de Moment * @param Wert */ convertNumberToMoment (value: Number): moment.Moment {

var hours = Math.floor(value); 
    var minutes = Math.round((value % 1)*100)/100; 

    return moment(hours + ':' + minutes * 60 + '0',"LT");  
} 

Ausgang 6:48

Verwandte Themen