Datum, Datum und Uhrzeit Objekt
1. Einleitung
Das Datumsobjekt ist ein Objekt, das Datum und Uhrzeit berücksichtigt. Das Date-Objekt kann Datum und Uhrzeit nur über Methoden bearbeiten.
2. Konstruktor
2.1 new Date(): Gibt das aktuelle lokale Datum und die aktuelle Uhrzeit zurück
Parameter: Keine
Rückgabewert:
{Date} gibt ein Date-Objekt zurück, das das lokale Datum und die lokale Uhrzeit darstellt.
Beispiel:
var dt = new Date();
console.log(dt); // => Gibt ein Date-Objekt zurück, das das lokale Datum und die lokale Uhrzeit darstellt
2.2 neues Datum (Millisekunden): Konvertieren Sie Millisekunden in ein Datumsobjekt
Parameter:
①milliseconds {int}: Anzahl der Millisekunden, die die Anzahl der Millisekunden ab „1970/01/00:00:00“ als Startpunkt angibt.
Hinweis: Die aktuelle Zeitzone muss zum Startpunkt hinzugefügt werden. Die Zeitzone der Pekinger Zeit ist: „1970/01/08:00:00“.
Rückgabewert:
{Date} gibt ein überlagertes Date-Objekt zurück.
Beispiel:
var dt = new Date(1000 * 60 * 1); // Anzahl der Millisekunden, um 1 Minute vorzurücken
console.log(dt); // => {Datum}:1970/01:00
dt = new Date(-1000 * 60 * 1); // Anzahl der Millisekunden, die 1 Minute zurückgehen
console.log(dt); // => {Datum}:01.01.1970 07:59:00
2.3 neues Date(dateStr): String in Datumsobjekt konvertieren
Parameter:
①dateStr {string}: Ein String, der in ein Date-Objekt konvertiert werden kann (die Zeit kann weggelassen werden); es gibt zwei Hauptformate von Strings:
1) jjjj/MM/tt HH:mm:ss (empfohlen): Wenn die Zeit weggelassen wird, ist die Zeit des zurückgegebenen Date-Objekts 00:00:00.
2) jjjj-MM-tt HH:mm:ss: Wenn die Zeit weggelassen wird, ist die Zeit des zurückgegebenen Date-Objekts 08:00:00 (plus die lokale Zeitzone). Wenn die Zeit nicht weggelassen wird, kann diese Zeichenfolge im IE nicht konvertiert werden!
Rückgabewert:
{Date} gibt ein konvertiertes Date-Objekt zurück.
Beispiel:
var dt = neues Datum('25.12.2014'); // jjjj/MM/tt
console.log(dt); // => {Datum}:25.12.2014 00:00:00
dt = neues Datum('25.12.2014 12:00:00'); // jjjj/MM/tt HH:mm:ss
console.log(dt); // => {Datum}:25.12.2014 12:00:00
dt = neues Datum('2014-12-25'); // yyyy-MM-dd
console.log(dt); // => {Datum}:2014-12-25 08:00:00 (Die Zeitzone des östlichen 8. Bezirks wurde hinzugefügt)
dt = new Date('2014-12-25 12:00:00'); // yyyy-MM-dd HH:mm:ss (Hinweis: Diese Konvertierungsmethode meldet einen Fehler im IE!)
console.log(dt); // => {Datum}:2014-12-25 12:00:00
2.4 neues Datum (Jahr, Monat, opt_day, opt_hours, opt_minutes, opt_seconds, opt_milliseconds): Jahr, Monat, Tag, Stunden, Minuten und Sekunden in Datumsobjekte konvertieren
Parameter:
①year {int}: Jahr; Wie zum Beispiel: 1999, 2014
②month {int}: Monat; Die Berechnung beginnt bei 0, 0 steht für Januar und 11 für Dezember.
③opt_day {int} Optional: Zahl; 2 Ziffern, beginnend mit 1, 1 bedeutet Nr. 1.
④opt_hours {int} Optional: 2 Ziffern; Wert 0~23.
⑤opt_minutes {int} Optional: 2 Ziffern; Wert 0~59.
⑥opt_seconds {int} Optional: 2 unnummerierte Werte;
⑦opt_milliseconds {int} Optional: Millisekundenwert 0~999.
Rückgabewert:
{Date} gibt ein konvertiertes Date-Objekt zurück.
Beispiel:
var dt = new Date(2014, 11); // Dezember 2014 (die hier eingegebene Monatszahl ist 11)
console.log(dt); // => {Datum}:2014/12/00 00:00:00
dt = neues Datum(2014, 11, 25); // 25. Dezember 2014
console.log(dt); // => {Datum}:25.12.2014 00:00:00
dt = neues Datum (2014, 11, 25, 15, 30, 40); // 25. Dezember 2014 15:30:40
console.log(dt); // => {Datum}:25.12.2014 15:30:40
dt = new Date(2014, 12, 25); // 25. Dezember 2014 (die hier eingegebene Monatszahl ist 12, was den 13. Monat bedeutet und zum Januar des zweiten Jahres springt)
console.log(dt); // => {Datum}:25.01.2015
3. Attribute
Keine; Datumsobjekte können nur über Methoden mit Datum und Uhrzeit arbeiten.
4. Instanzmethoden
Die Instanzmethoden des Date-Objekts sind hauptsächlich in zwei Formen unterteilt: Ortszeit und UTC-Zeit. Die gleiche Methode funktioniert im Allgemeinen mit diesen beiden Zeitformaten (der Methodenname mit UTC ist die Operation der UTC-Zeit). Hier stellen wir hauptsächlich die Operation der Ortszeit vor.
4.1 Get-Methode
4.1.1 getFullYear(): Gibt den Jahreswert des Date-Objekts mit 4 Ziffern zurück.
4.1.2 getMonth(): Gibt den Monatswert des Date-Objekts zurück. Beginnt bei 0, also echter Monat = Rückgabewert 1 .
4.1.3 getDate(): Gibt den Datumswert im Monat des Date-Objekts zurück; der Wertebereich liegt zwischen 1 und 31.
4.1.4 getHours(): Gibt den Stundenwert des Date-Objekts zurück.
4.1.5 getMinutes(): Gibt den Minutenwert des Date-Objekts zurück.
4.1.6 getSeconds(): Gibt den Sekundenwert des Date-Objekts zurück.
4.1.7 getMilliseconds(): Gibt den Millisekundenwert des Date-Objekts zurück.
4.1.8 getDay(): Gibt den Wochentagswert des Date-Objekts zurück; 0 ist Sonntag, 1 ist Montag, 2 ist Dienstag und so weiter
4.1.9 getTime(): Gibt den Millisekundenwert zwischen dem Date-Objekt und „1970/01/01 00:00:00“ zurück (die Zeitzone der Pekinger Zeit ist East 8th District, die Startzeit ist tatsächlich: „ 01.01.1970 08:00:00‘).
Beispiel:
dt.getFullYear(); // =>
dt.getMonth(); // => 11: tatsächlich Dezember (Monat beginnt bei 0)
dt.getDate(); // => 25: Tag
dt.getHours(); // => 15: Stunden
dt.getMinutes(); // => 30: Minuten
dt.getSeconds(); // => 40: Sekunden
dt.getMilliseconds(); // => 333: Millisekunden
dt.getDay(); // => 4: Wochentagswert
dt.getTime(); // => 1419492640333: Gibt den Millisekundenwert zwischen dem Date-Objekt und „1970/01/01 00:00:00“ zurück (die Zeitzone der Pekinger Zeit ist East 8th District, die Startzeit ist tatsächlich :' 01.01.1970 08:00:00')
4.2 Set-Methode
4.2.1 setFullYear(year, opt_month, opt_date): Legen Sie den Jahreswert des Date-Objekts fest;
4.2.2 setMonth(month, opt_date): Legt den Monatswert des Date-Objekts fest. 0 steht für Januar und 11 für Dezember.
4.2.3 setDate(date): Legen Sie den Datumswert im Monat des Date-Objekts fest; der Wertebereich liegt zwischen 1 und 31.
4.2.4 setHours(hour, opt_min, opt_sec, opt_msec): Legt den Stundenwert des Date-Objekts fest.
4.2.5 setMinutes(min, opt_sec, opt_msec): Legen Sie den Minutenwert des Date-Objekts fest.
4.2.6 setSeconds(sec, opt_msec): Legt den Sekundenwert des Date-Objekts fest.
4.2.7 setMilliseconds(msec): Legt den Millisekundenwert des Date-Objekts fest.
Beispiel:
var dt = new Date();
dt.setFullYear(2014); // =>
dt.setMonth(11); // => 11: tatsächlich Dezember (Monat beginnt bei 0)
dt.setDate(25); // => 25: Tag
dt.setHours(15); // => 15: Stunden
dt.setMinutes(30); // => 30: Minuten
dt.setSeconds(40); // => 40: Sekunden
dt.setMilliseconds(333); // => 333: Millisekunden
console.log(dt); // => 25. Dezember 2014 15:30:40 333 Millisekunden
4.3 Andere Methoden
4.3.1 toString(): Datum in eine Zeichenfolge „Jahr, Monat, Tag, Stunde, Minute und Sekunde“ konvertieren
4.3.2 toLocaleString(): Datum in eine lokale Formatzeichenfolge von „Jahr, Monat, Tag, Stunde, Minute und Sekunde“ konvertieren
4.3.3 toDateString(): Datum in eine Zeichenfolge „Jahr, Monat, Tag“ konvertieren
4.3.4 toLocaleDateString(): Datum in eine lokale Formatzeichenfolge von „Jahr, Monat und Tag“ konvertieren
4.3.5 toTimeString(): Datum in eine Zeichenfolge aus „Stunden, Minuten und Sekunden“ konvertieren
4.3.6 toLocaleTimeString(): Datum in eine lokale Formatzeichenfolge von „Stunden, Minuten und Sekunden“ konvertieren
4.3.7 valueOf(): Identisch mit getTime(), gibt den Millisekundenwert zwischen dem Date-Objekt und „1970/01/01 00:00:00“ zurück (die Zeitzone der Pekinger Zeit ist East 8th District). Die Startzeit ist tatsächlich: '1970/01/01 08:00:00')
Beispiel:
Code kopieren Der Code lautet wie folgt:
var dt = new Date();
console.log(dt.toString()); // => Di 23. Dezember 2014 22:56:11 GMT 0800 (China Standard Time): Konvertieren Sie das Datum in ein Jahr, einen Monat, einen Tag, eine Stunde, eine Minute und eine Sekunde ' Zeichenfolge
console.log(dt.toLocaleString()); // => 23. Dezember 2014 22:56:11 Uhr: Datum in eine lokale Formatzeichenfolge von „Jahr, Monat, Tag, Stunde, Minute und Sekunde“ konvertieren 🎜>
console.log(dt.toDateString()); // => Di, 23. Dezember 2014: Datum in eine Zeichenfolge „Jahr, Monat und Tag“ konvertieren
console.log(dt.toLocaleDateString()); // => Datum in eine lokale Formatzeichenfolge von „Jahr, Monat und Tag“ konvertieren
console.log(dt.toTimeString()); // => 22:56:11 GMT 0800 (China Standard Time): Konvertieren Sie das Datum in eine Zeichenfolge „Stunden, Minuten und Sekunden“
console.log(dt.toLocaleTimeString()); // => Datum in eine lokale Formatzeichenfolge von „Stunden, Minuten und Sekunden“ konvertieren
console.log(dt.valueOf()); // => Gibt den Millisekundenwert zwischen dem Date-Objekt und „1970/01/01 00:00:00“ zurück (die Zeitzone der Pekinger Zeit ist der 8. Bezirk). Die Startzeit ist tatsächlich: '1970/01/01 08:00:00')
5. Statische Methode
5.1 Date.now()
Beschreibung: Gibt den Millisekundenwert zwischen dem Date-Objekt des aktuellen Datums und der aktuellen Uhrzeit und „1970/01/01 00:00:00“ zurück (die Zeitzone der Pekinger Zeit ist East 8th District, die Startzeit ist tatsächlich: „1970/ 01/01 08 :00:00')
Parameter: Keine
Rückgabewert:
{int}: Die Anzahl der Millisekunden zwischen der aktuellen Zeit und der Startzeit.
Beispiel:
5.2 Date.parse(dateStr)
Beschreibung: Konvertieren Sie die Zeichenfolge in ein Date-Objekt und geben Sie dann den Millisekundenwert zwischen diesem Date-Objekt und „1970/01/01 00:00:00“ zurück (die Zeitzone der Pekinger Zeit ist East 8th District, die Startzeit ist tatsächlich). : '01.01.1970 08:00:00')
Parameter:
①dateStr {string}: Ein String, der in ein Date-Objekt konvertiert werden kann (die Zeit kann weggelassen werden); es gibt zwei Hauptformate von Strings:
1) jjjj/MM/tt HH:mm:ss (empfohlen): Wenn die Zeit weggelassen wird, ist die Zeit des zurückgegebenen Date-Objekts 00:00:00.
2) jjjj-MM-tt HH:mm:ss: Wenn die Zeit weggelassen wird, ist die Zeit des zurückgegebenen Date-Objekts 08:00:00 (plus die lokale Zeitzone). Wenn die Zeit nicht weggelassen wird, gibt diese Zeichenfolge im IE NaN (keine Zahl) zurück!
Rückgabewert:
{int} Gibt die Anzahl der Millisekunden zwischen dem konvertierten Date-Objekt und der Startzeit zurück.
Beispiel:
Code kopieren
Der Code lautet wie folgt:
console.log(Date.parse('25.12.2014 12:00:00')); // =>
console.log(Date.parse('2014-12-25 12:00:00')); // => (Hinweis: Diese Konvertierungsmethode gibt NaN im IE zurück!)
6. Praktische Bedienung
6.1 Konvertieren Sie den DateTime-Typ von C# in das Date-Objekt von Js
Hinweis: Das Format des DateTime-Typs von C#, der durch Json-Serialisierung an die Rezeption zurückgegeben wird, ist: „/Date(1419492640000)/“. Die Zahl in der Mitte gibt die Anzahl der Millisekunden zwischen dem DateTime-Wert und der Startzeit an.
Beispiel:
Backend-Code: einfaches ashx
Code kopieren
Der Code lautet wie folgt:
public void ProcessRequest (HttpContext-Kontext) {
System.Web.Script.Serialization.JavaScriptSerializer js = new System.Web.Script.Serialization.JavaScriptSerializer();
DateTime dt = DateTime.Parse("2014-12-25 15:30:40");
String rs = js.Serialize(dt); // Serialisieren in Json
Context.Response.ContentType = "text/plain";
context.Response.Write(rs);
}
Frontend-Code:
Code kopieren
Der Code lautet wie folgt:
var dateTimeJsonStr = '/Date(1419492640000)/'; // Json-Format für die C#-DateTime-Typkonvertierung
var msecStr = dateTimeJsonStr.toString().replace(//Date(([-]?d ))//gi, "$1"); // => >
var msesInt = Number.parseInt(msecStr); // Millisekunden-String in numerischen Wert konvertieren
var dt = new Date(msesInt); //Datumsobjekt initialisieren
console.log(dt.toLocaleString()); // => 25. Dezember 2014 15:30:40 Uhr
6.2 Countdown abrufen
Beschreibung: Berechnen Sie, wie viele Tage, Stunden und Minuten die aktuelle Zeit von der Zielzeit entfernt ist.
Beispiel:
/**
* Zurück zum Countdown
* @param dt {Date}: Zieldatumsobjekt
* @return {Strin}: Countdown für die Rückkehr: X Tage, X Stunden, X Minuten
*/
Funktion getDownTime(dt) {
// 1. Countdown abrufen
var IntervalMsec = dt - Date.now(); // Subtrahiere die aktuelle Zeit von der Zielzeit und erhalte die Anzahl der Millisekunden Differenz zwischen den beiden
var IntervalSec = IntervalMsec / 1000; // In Sekunden umrechnen
var day = parseInt(intervalSec / 3600 / 24); // Anzahl der Tage
var Stunde = parseInt((intervalSec - Tag * 24 * 3600) / 3600 // Stunde
var min = parseInt((intervalSec - Tag * 24 * 3600 - Stunde * 3600) / 60); // Minuten
// 2. Wenn die Differenz in Millisekunden kleiner als 0 ist, bedeutet dies, dass die Zielzeit kleiner als die aktuelle Zeit ist. Die zu diesem Zeitpunkt erfassten Werte sind alle negativ: -X Tage - Stunden - Minuten. Es werden nur die negativen Tage davor angezeigt.
Wenn (intervalMsec < 0) {
Stunde = 0 - Stunde;
min = 0 - min;
}
// 3. Zeichenfolgen verketten und
zurückgeben
var rs = Tag 'Tag' Stunde 'Stunde' min 'Minute';
Geben Sie rs;
zurück
}
// Aktuelle Uhrzeit: 28.12.2014 13:26
console.log(getDownTime(new Date('2015/06/01'))); // => 154 Tage 10:33
console.log(getDownTime(new Date('2014/01/01'))); // =>
6.3 Vergleichen Sie die Größen zweier Datumsobjekte
Hinweis: Sie können die beiden mit der Anzahl der Millisekunden der Startzeit vergleichen, um die Größe zu unterscheiden.
Beispiel:
var dt1 = neues Datum('01.12.2015');
var dt2 = neues Datum('25.12.2015');
console.log(dt1 > dt2); // => false