Im täglichen Leben gibt es überall verschiedene Formen von Zeitzeichen. Das Aufkommen des Zeitbegriffs, die Erfindung von Zeiteinheiten und Zeitmessgeräten haben Veränderungen für den Menschen mit sich gebracht, die sich nur schwer mit einem Wort beschreiben lassen. Lassen Sie uns heute über Termine sprechen. Werfen wir einen Blick auf das Date-Objekt in JavaScript.
Das Datumsobjekt ist eines der am häufigsten verwendeten Objekte, aber viele Leute wissen überhaupt nicht, wie man es bedient. Selbst für einige einfache Operationen verwenden sie Moment, ohne es selbst auszuprobieren.
Dieses Mal werde ich die Fähigkeiten zur Verwendung von Datteln in Date weitergeben, ich hoffe, es kann alle inspirieren.
Einführung in die offizielle MDN-Website
Die Methode setDate() gibt die Anzahl der Tage in einem Datumsobjekt basierend auf der Ortszeit an.
Wenn dayValue außerhalb des angemessenen Bereichs des Monats liegt, aktualisiert setDate das Date-Objekt entsprechend.
Wenn Sie beispielsweise 0 für dayValue angeben, wird das Datum auf den letzten Tag des Vormonats gesetzt.
Ermitteln Sie die Anzahl der Tage im Monat
// 获取月份天数 function getMonthDayCount(year, month) { return new Date(year, month, 0).getDate(); } console.log(getMonthDayCount(2017, 10)); // 31
Die Essenz des dritten Parameters von Date ist die gleiche wie setDate.
Denn wenn das Datum 0 ist, kehrt es automatisch zum letzten Tag des Vormonats zurück, sodass der Monat nicht dekrementiert werden muss, es ist genau richtig.
Ermitteln Sie die Anzahl der Tage in allen Monaten
function getAllMonthDayCount(year) { var days = [31, new Date(year, 2, 0).getDate(), 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; return days; } console.log(getAllMonthDayCount(2016));// [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
Dies ist eine Erweiterung des oben Gesagten, nicht viel Erklärung.
Ob es ein Schaltjahr ist
function isLeapYear(year) { return (year % 4 == 0) && (year % 100 != 0 || year % 400 == 0); }
Das ist der Code im Internet, ich glaube, die meisten Leute verwenden ihn.
Aber verstehst du es wirklich oder erinnerst du dich daran?
Ich kann sowieso nicht. .
function isLeapYear(year) { return new Date(year, 2, 0).getDate() === 29; } console.log([ isLeapYear(2000), isLeapYear(2016), isLeapYear(2017), isLeapYear(2018) ]); // [ true, true, false, false ]
So gesehen ist es sehr einfach und leicht zu verstehen.
Und Sie müssen sich nicht daran erinnern. Glauben Sie, dass Sie es nicht vergessen können, selbst wenn Sie es möchten?
Tagesadditions- und -subtraktionsoperationen
Ich habe gesehen, wie jemand relative Sekunden verwendet hat, um Tage vor oder nach Tagen zu berechnen, und sogar Berechnungen über Monate und Jahre hinweg.
Stellen Sie das Datum einfach direkt ein, und die Situation, dass sich Monate und Jahre überschneiden, wird automatisch gehandhabt.
// 10天后是几月几号 var dt = new Date('2016-12-25'); dt.setDate(dt.getDate() + 10); console.log(dt.toLocaleDateString()); // 2017/1/4 // 10天前是几月几号 var dt = new Date('2017-01-04'); dt.setDate(dt.getDate() - 10); console.log(dt.toLocaleDateString()); // 2016/12/25
Zusammenfassung
Obwohl diese Dinge sehr einfach sind und jeder den Namen der Methode kennen mag, verwenden viele Menschen sie immer noch nicht.
Es ist dasselbe wie die Verwendung von jq, aber es wird immer noch eine for-Schleife verwendet, um die Ergebnisse zu verarbeiten.
Hier sind nur einige Beispiele, möglicherweise warten noch andere magische Operationstechniken darauf, von Ihnen entdeckt zu werden.
Das Obige habe ich für Sie zusammengestellt und hoffe, dass es Ihnen in Zukunft hilfreich sein wird.
Verwandte Artikel:
Zusammenfassung der JS-Seitenaktualisierungsmethode
Das obige ist der detaillierte Inhalt vonDas magische Date-Objekt in Javascript (grafisches Tutorial). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!