Ich möchte die aktuelle Zeit in einem bestimmten Format mit Javascript abrufen.
Mit der unten stehenden Funktion und dem Aufruf erhalte ich am Freitag, den 01. Februar 2013 um 13:56:40 Uhr GMT + 1300 (neuseeländische Sommerzeit), aber ich möchte sie wie Freitag, 14:00 Uhr, den 1. Februar 2013 formatieren
var d = new Date();
var x = document.getElementById("time");
x.innerHTML = d;
Natürlich hat der obige Code keine Formatierungslogik, aber ich habe noch keine "funktionierenden" Formatierer gefunden.
javascript
date
time
format
Seong Lee
quelle
quelle
Antworten:
Ein JavaScript-Datum verfügt über mehrere Methoden, mit denen Sie seine Teile extrahieren können:
getFullYear()
- Gibt das 4-stellige Jahr zurück.getMonth()
- Gibt eine auf Null basierende Ganzzahl (0-11) zurück, die den Monat des Jahres darstellt.getDate()
- Gibt den Tag des Monats zurück (1-31).getDay()
- Gibt den Wochentag zurück (0-6). 0 ist Sonntag, 6 ist Samstag.getHours()
- Gibt die Stunde des Tages zurück (0-23).getMinutes()
- Gibt die Minute zurück (0-59).getSeconds()
- Gibt die Sekunde zurück (0-59).getMilliseconds()
- Gibt die Millisekunden (0-999) zurück.getTimezoneOffset()
- Gibt die Anzahl der Minuten zwischen der Ortszeit des Geräts und UTC zurück.Es gibt keine integrierten Methoden, mit denen Sie lokalisierte Zeichenfolgen wie "Freitag", "Februar" oder "PM" abrufen können. Sie müssen das selbst codieren. Um die gewünschte Zeichenfolge zu erhalten, müssen Sie mindestens Zeichenfolgendarstellungen von Tagen und Monaten speichern:
Stellen Sie es dann mit den oben beschriebenen Methoden zusammen:
Ich habe eine Datumsformatfunktion, die ich gerne in meine Standardbibliothek aufnehmen möchte. Es wird ein Format-String-Parameter verwendet, der die gewünschte Ausgabe definiert. Die Formatzeichenfolgen basieren lose auf benutzerdefinierten .Net-Formatzeichenfolgen für Datum und Uhrzeit . Für das von Ihnen angegebene Format würde die folgende Formatzeichenfolge funktionieren :
"dddd h:mmtt d MMM yyyy"
.Demo: jsfiddle.net/BNkkB/1
Hier ist meine vollständige Datumsformatierungsfunktion:
quelle
MMMM[0]
der korrekte Monatsname anstelle des nicht druckbaren Zeichens bei Index 0 zurückgegeben? Sollte es nicht seinMMMM[M]
? Bin ich nur dumm (Nevermind. Es setzt es auf das nicht druckbare Zeichen, das es später ersetzt, um Konflikte zu vermeiden.)Vielleicht möchten Sie es versuchen
Dokumentation
quelle
d.toLocaleTimeString()
undd.toLocaleTimeString()
arbeiten nicht.toLocaleTimeString()
undtoLocaleTimeString()
Update 2017 : Verwenden Sie toLocaleDateString und toLocaleTimeString , um Datum und Uhrzeit zu formatieren. Der erste Parameter, der an diese Methoden übergeben wird, ist ein Gebietsschemawert, z. B. en-us . Der zweite Parameter, sofern vorhanden, gibt Formatierungsoptionen an, z. B. die Langform für den Wochentag.
Weitere Informationen finden Sie unter dem folgenden Link.
Datums- und Zeitzeichenfolgen (JavaScript)
quelle
toLocalTimeString
4 Datumsstile anfull
long
medium
short
, und möglicherweise wird irgendwo definiert, was diese Begriffe bedeuten. In der Zwischenzeit könnte die Strftime (wahrscheinlich) mit all diesen und vielen anderen mithalten.toLocalTimeString
Unterstützt andererseits Zeitzonen. Ich hoffe, das schließt Zeitzonen ein, die Sommerzeit verwenden ...Sie können meinen Port of Strftime verwenden :
Beispielnutzung:
Der neueste Code ist hier verfügbar: https://github.com/thdoan/strftime
quelle
Schauen Sie sich die Interna der Date-Klasse an und Sie werden sehen, dass Sie alle Bits (Datum, Monat, Jahr, Stunde usw.) extrahieren können.
http://www.w3schools.com/jsref/jsref_obj_date.asp
Für so etwas wie
Fri 23:00 1 Feb 2013
den Code ist wie:**** Modifiziert am 29.05.2019, um 3 Downvoter bei Laune zu halten
quelle
date.getMinutes()
ist, dass eine einzelne Ziffer zurückgegeben wird, wenn die Minuten kleiner als 10 sind, was zu Zeiten wie "10: 4 Uhr" anstelle der üblicheren "10: 04 Uhr" führt.Es gibt viele großartige Bibliotheken für Interessierte
Es sollte heutzutage wirklich nicht nötig sein, eigene Formatierungsspezifizierer zu erfinden.
quelle
moment
der aktuelle Standard für zeitbezogene Dinge in Javascript ist.moment
rockt.d3
hat auch einige Zeitsachen hinzugefügt. Wenn Sie diese also bereits verwenden, können Sie möglicherweise einen Bibliotheksimport speichern. github.com/d3/d3/blob/master/API.md#time-formats-d3-time-format2,39 KB minimiert. Eine Datei. https://github.com/rhroyston/clock-js
Aktuelle Zeit ist
quelle
quelle
Um mit der Basis-Date-Klasse zu arbeiten, können Sie MDN nach seinen Methoden durchsuchen (aus diesem Grund anstelle von W3Schools ). Dort finden Sie eine gute Beschreibung aller Methoden, die für den Zugriff auf jede einzelne Datums- / Zeitkomponente nützlich sind, sowie Informationen darüber, ob eine Methode veraltet ist oder nicht.
Andernfalls können Sie sich Moment.js ansehen , eine gute Bibliothek für die Datums- und Zeitverarbeitung . Sie können damit Datum und Uhrzeit bearbeiten (z. B. Parsen, Formatieren, i18n usw.).
quelle
Verwendung & Ergebnis:
quelle
Verwenden Sie für diesen echten MySQL-Stil die folgende Funktion:
2019/02/28 15:33:12
quelle
ISO8601 (zB: HH: MM: SS, 07:55:55 oder 18:50:30) auf Chrom:
am Rand:
quelle
}) ();
05:12:00
quelle
quelle