Heim >Web-Frontend >js-Tutorial >Zusammenfassung von Date-Objekten in JavaScript
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
Datum Der Kern des dritten Parameters ist derselbe wie bei setDate .
Da das Datum automatisch auf den letzten Tag des Vormonats zurückgesetzt wird, wenn es 0 ist, besteht hier keine Notwendigkeit, den Monat zu verringern, was genau richtig ist.
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); }
Dies 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, kennt vielleicht jeder den Namen der Methode, aber viele Menschen Ich werde es immer noch nicht verwenden.
Es ist dasselbe wie die Verwendung von jq, aber es wird immer noch eine for-Schleife verwendet, um die Ergebnisse zu verarbeiten.
Das obige ist der detaillierte Inhalt vonZusammenfassung von Date-Objekten in JavaScript. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!