Hier ist ein Beispiel für die Verwendung von Date.prototype.toLocaleTimeString()
. Ich habe GB als Sprache gewählt, weil die USA eine 24
anstelle einer 00
für die anfängliche Stunde anzeigen. Außerdem habe ich Etc/UTC
als Zeitzone gewählt, weil UTC
in der Liste der IANA-Zeitzonen darauf verweist.
const formatTime = (Sekunden) =>
new Date(Sekunden * 1000).toLocaleTimeString('en-GB', {
timeZone:'Etc/UTC',
hour12: false,
hour: '2-digit',
minute: '2-digit',
second: '2-digit'
});
console.log(formatTime(75)); // 00:01:15
.as-console-wrapper { top: 0; max-height: 100% !important; }
Hier ist das gleiche Beispiel, aber mit Intl.DateTimeFormat
. Diese Variante ermöglicht es Ihnen, ein wiederverwendbares Formatter-Objekt zu instanziieren, was performanter ist.
const dateFormatter = new Intl.DateTimeFormat('en-GB', {
timeZone:'Etc/UTC',
hour12: false,
hour: '2-digit',
minute: '2-digit',
second: '2-digit'
});
const formatTime = (Sekunden) => dateFormatter.format(new Date(Sekunden * 1000));
console.log(formatTime(75)); // 00:01:15
.as-console-wrapper { top: 0; max-height: 100% !important; }
15 Stimmen
Benchmarks einiger der vorgeschlagenen Antworten in diesem Thread. jsperf.com/ms-to-hh-mm-ss-time-format
0 Stimmen
Mögliche Duplikat von Sekunden in HH-MM-SS mit JavaScript umwandeln?