Ermitteln Sie die Anzahl der Tage in einem bestimmten Monat
Ich glaube, als Sie in der Grundschule waren, wussten Sie alle, wie viele Tage es in jedem der zwölf Monate des Jahres gibt. Es gibt ein besonderes Leben darin – den Februar. Der Februar in Schaltjahren hat 29 Tage, während der Februar in Nicht-Schaltjahren nur 28 Tage hat. Es wird geschätzt, dass viele Menschen wie ich die Regeln für Schaltjahre vergessen haben. Zu diesem Zeitpunkt ist die folgende Methode nützlich.
var date = neues Datum(2013, 2, 0);
date.getDate(); // 28
Datum = neues Datum (2012, 2, 0);
date.getDate(); // 29
Beim Erstellen eines Datumsobjekts können Sie drei Parameter übergeben: Jahr, Monat (0 bis 11, 0 bedeutet Januar) und Tag. Wenn der Tagesparameter 0 ist, stellt das erstellte Objekt den letzten Tag des vorherigen Monats dar. So können Sie wissen, wie viele Tage der letzte Monat hatte.
Ähnlich können wir diese Methode auch verwenden, um festzustellen, ob ein bestimmtes Jahr ein Schaltjahr ist:
Funktion isLeapYear(year) {
Gibt neues Date(year, 2, 0).getDate() === 29;
zurück
}
isLeapYear(2012); // true
Zeitzone abrufen
Die getTimezoneOffset()-Methode des Datumstyps kann den Zeitunterschied zwischen Greenwich-Zeit und Ortszeit in Minuten ermitteln. Zum Beispiel:
var date = new Date();
var timezoneOffset = date.getTimezoneOffset(); // China (Ostbezirk) ist -480
-timezoneOffset / 60; // 8
Teilen Sie den erhaltenen Zeitunterschied durch 60 und nehmen Sie dann den negativen Wert, um die Zeitzone zu erhalten.
Abgesehen davon gibt es noch einen anderen Weg. Nach dem Aufruf von toString() vom Datumstyp können Sie eine Datumszeichenfolge in einem festen Format erhalten:
new Date().toString(); // So 10. März 2013 16:41:12 GMT 0800 (China Standard Time)
Offensichtlich ist die 800 nach GMT die gewünschte Zeitzone. Wir können den Wert erhalten, indem wir ihn mit einem regulären Ausdruck abgleichen.
/GMT([ -]d )/.test( new Date().toString() );
var timezone = RegExp.$1; // 0800
Allerdings ist die Zeitzonenvariable zu diesem Zeitpunkt eine Zeichenfolge. Wenn sie in einen numerischen Typ konvertiert werden soll, muss eine gewisse Verarbeitung durchgeführt werden.
Laufzeit berechnen
Wie misst man die Ausführungszeit eines bestimmten Programms? Die Methode ist sehr einfach. Zeichnen Sie die Zeit vor der Ausführung auf. Ziehen Sie nach der Ausführung die Zeit vor der Ausführung von der aktuellen Zeit ab, um das Ergebnis zu erhalten:
var startTime = new Date();
// irgendein Programm
console.log(new Date() - startTime);
Hier ist keine manuelle Konvertierung des Datums in eine Zahl erforderlich, da die Subtraktionsoperation die Konvertierung natürlich erzwingt. Das auf diese Weise berechnete Ergebnis liegt auf Millisekundenebene, was nicht sehr genau ist. Bei browserseitigem Javascript besteht jedoch kein Grund zur Sorge, dass der Verbrauch innerhalb einer Millisekunde liegt.
Cookies löschen
Um genau zu sein, können wir Cookies nicht direkt über Javascript löschen. Die einzige Möglichkeit, ein Cookie aus der Welt zu löschen, besteht darin, es ablaufen zu lassen, sodass es durch den integrierten Mechanismus des Browsers automatisch gelöscht wird.
Der einfachste Weg, ein Cookie ablaufen zu lassen, besteht darin, seine Ablaufzeit auf den Mindestwert festzulegen. Das kleinste Datum, das in Javascript ausgedrückt werden kann, ist 0:00:00 am 1. Januar 1970. Sie können ein solches Datumsobjekt über new Date(0):
erstellen
var cookieName = 'name'; // Cookie-Name
document.cookie = cookieName '=' '; Expires=' new Date(0).toUTCString();