1636 Stimmen

Konvertierung eines Unix-Zeitstempels in die Uhrzeit in JavaScript

Ich speichere Zeit in einer MySQL-Datenbank als Unix-Zeitstempel und das wird an einige JavaScript-Code gesendet. Wie würde ich nur die Zeit aus es bekommen?

Zum Beispiel, in HH/MM/SS Format.

25 Stimmen

Multiplizieren Sie einfach mit 1000, da JS-Zeitstempel in Millisekunden und PHP in Sekunden angegeben sind.

1 Stimmen

Hier ist ein sehr nützlicher Link mit verschiedenen Datumsformaten: timestamp.online/article/ Kombinieren Sie das mit der Multiplikation mit 1000 und Sie haben den Job erledigt!

0 Stimmen

Sehen Sie hier, was ich erreicht habe: stackoverflow.com/a/64089456/2927228

6voto

Ashish Gupta Punkte 968
function getDateTimeFromTimestamp(unixTimeStamp) {
    let date = new Date(unixTimeStamp);
    return ('0' + date.getDate()).slice(-2) + '/' + ('0' + (date.getMonth() + 1)).slice(-2) + '/' + date.getFullYear() + ' ' + ('0' + date.getHours()).slice(-2) + ':' + ('0' + date.getMinutes()).slice(-2);
}

const myTime = getDateTimeFromTimestamp(1435986900000);
console.log(myTime); // output 01/05/2000 11:00

0 Stimmen

Es handelt sich nicht um einen Unix-Zeitstempel: 1435986900000 / Dies ist ein Unix-Zeitstempel: 1435986900

0 Stimmen

Diese Lösung funktioniert für mich, aber wie kann ich den Monat wie Feb Mar Apr anstelle der Zahl nehmen?

6voto

Fireblaze Punkte 232
// Format value as two digits 0 => 00, 1 => 01
function twoDigits(value) {
   if(value < 10) {
    return '0' + value;
   }
   return value;
}

var date = new Date(unix_timestamp*1000);
// display in format HH:MM:SS
var formattedTime = twoDigits(date.getHours()) 
      + ':' + twoDigits(date.getMinutes()) 
      + ':' + twoDigits(date.getSeconds());

0 Stimmen

Ich glaube nicht, dass Sie eine zusätzliche, separate Funktion benötigen, um eine Zahl mit nachgestellter Null zu erhalten, wenn dies notwendig ist - siehe meine Antwort am Ende.

2 Stimmen

@trejder, in Ihrem Beispiel DUPLIZIEREN Sie die Logik, während Sie sie mit der Zusatzfunktion an einer Stelle haben. Außerdem lösen Sie die Datumsfunktion (z.B. getHours()) immer zweimal aus, während es hier ein einmaliger Aufruf ist. Man kann nie wissen, wie schwer eine Bibliotheksfunktion ist, die erneut ausgeführt werden muss (ich glaube jedoch, dass sie für Datumsangaben leicht ist).

5voto

shams Punkte 51

Ver _Datum/Epoche Konverter_ .

Sie müssen ParseInt sonst würde es nicht funktionieren:


if (!window.a)
    window.a = new Date();

var mEpoch = parseInt(UNIX_timestamp);

if (mEpoch < 10000000000)
    mEpoch *= 1000;

------
a.setTime(mEpoch);
var year = a.getFullYear();
...
return time;

5voto

shomrat Punkte 3563
function timeConverter(UNIX_timestamp){
 var a = new Date(UNIX_timestamp*1000);
     var hour = a.getUTCHours();
     var min = a.getUTCMinutes();
     var sec = a.getUTCSeconds();
     var time = hour+':'+min+':'+sec ;
     return time;
 }

5voto

Kamil Kiełczewski Punkte 69048

Kürzeste

(new Date(ts*1000)+'').slice(16,24)

let ts = 1549312452;
let time = (new Date(ts*1000)+'').slice(16,24);

console.log(time);

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X