4911 Stimmen

Wie erhält man einen Zeitstempel in JavaScript?

Etwas Ähnliches wie der Unix-Zeitstempel, d.h. eine einzelne Zahl, die die aktuelle Zeit und das Datum darstellt. Entweder als Zahl oder als String.

0 Stimmen

Var timeStampInMs = window.performance && window.performance.now && window.performance.timing && window.performance.timing.navigationStart ? window.performance.now() + window.performance.timing.navigationStart : Date.now(); console.log(timeStampInMs, Date.now());

16voto

SBotirov Punkte 13362

Alle Browser, die Date.now nicht unterstützen, können dies verwenden, um das aktuelle Datum und die Uhrzeit zu erhalten:

currentTime = Date.now() || +new Date()

4 Stimmen

(Umformulierung meines Kommentars) Ihr Code hat ein Problem: Er führt die Methode Date.now aus, anstatt zuerst ihre Unterstützung zu prüfen. Auf älteren Browsern führt dies zu Date.now ist keine Funktion Fehler.

0 Stimmen

Eine bessere Alternative wäre vielleicht, einen ternären Operator zu verwenden, um zu behaupten, dass Date.now tatsächlich existiert (und eine Funktion ist), bevor Sie versuchen, sie aufzurufen: currentTime = typeof Date.now === "function" ? Date.now() : +new Date() .

16voto

Ronnie Royston Punkte 13643

Das scheint zu funktionieren.

console.log(clock.now);
// returns 1444356078076

console.log(clock.format(clock.now));
//returns 10/8/2015 21:02:16

console.log(clock.format(clock.now + clock.add(10, 'minutes'))); 
//returns 10/8/2015 21:08:18

var clock = {
    now:Date.now(),
    add:function (qty, units) {
            switch(units.toLowerCase()) {
                case 'weeks'   :  val = qty * 1000 * 60 * 60 * 24 * 7;  break;
                case 'days'    :  val = qty * 1000 * 60 * 60 * 24;  break;
                case 'hours'   :  val = qty * 1000 * 60 * 60;  break;
                case 'minutes' :  val = qty * 1000 * 60;  break;
                case 'seconds' :  val = qty * 1000;  break;
                default       :  val = undefined;  break;
                }
            return val;
            },
    format:function (timestamp){
            var date = new Date(timestamp);
            var year = date.getFullYear();
            var month = date.getMonth() + 1;
            var day = date.getDate();
            var hours = date.getHours();
            var minutes = "0" + date.getMinutes();
            var seconds = "0" + date.getSeconds();
            // Will display time in xx/xx/xxxx 00:00:00 format
            return formattedTime = month + '/' + 
                                day + '/' + 
                                year + ' ' + 
                                hours + ':' + 
                                minutes.substr(-2) + 
                                ':' + seconds.substr(-2);
            }
};

14voto

Anoop P S Punkte 684

Hier gibt es eine Lösung, die unixtime stamp in tim in js umwandelt, versuchen Sie dies

var a = new Date(UNIX_timestamp*1000);
var hour = a.getUTCHours();
var min = a.getUTCMinutes();
var sec = a.getUTCSeconds();

14voto

georgez Punkte 727

Ich habe eine wirklich coole Methode zur Konvertierung eines gegebenen Date-Objekts in einen Unix-Zeitstempel aus dem Quellcode von JQuery-Cookie Neulich.

Hier ist ein Beispiel:

var date = new Date();
var timestamp = +date;

0 Stimmen

Ich war gerade dabei, das neue Date()-Objekt zu schreiben. Sie können in der Konsole log(new Date()) und dann die zugehörigen Methoden unter dem neuen Date()-Objekt/der neuen Funktion überfliegen

14voto

Kevin Leary Punkte 7707

Wenn man einen einfachen Weg sucht, um einen Zeitstempel in Node.js zu erzeugen, funktioniert dies gut.

var time = process.hrtime();
var timestamp = Math.round( time[ 0 ] * 1e3 + time[ 1 ] / 1e6 );

Unser Team verwendet dies, um den Cache in einer Localhost-Umgebung zu löschen. Die Ausgabe ist /dist/css/global.css?v=245521377 donde 245521377 ist der Zeitstempel, der von hrtime() .

Hoffentlich hilft dies, die oben genannten Methoden können auch funktionieren, aber ich fand dies der einfachste Ansatz für unsere Bedürfnisse in Node.js sein.

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