Heim  >  Artikel  >  Web-Frontend  >  Finden Sie in JavaScript eine Reihe von Jahren, in denen der 1. Januar ein Sonntag ist?

Finden Sie in JavaScript eine Reihe von Jahren, in denen der 1. Januar ein Sonntag ist?

王林
王林nach vorne
2023-09-08 11:45:041400Durchsuche

在 JavaScript 中查找年份范围内的 1 月 1 日是星期日?

Im Laufe der Jahre ist es immer wichtig zu wissen, wann der 1. Januar auf einen Sonntag fällt. Diese Informationen können für verschiedene Zwecke verwendet werden, z. B. zur Planung von Veranstaltungen, zur Verwaltung von Projekten usw. Der Zweck dieses Artikels besteht darin, Ihnen dabei zu helfen, in JavaScript die Daten in einer Reihe von Jahren zu finden, an denen der 1. Januar auf einen Sonntag fällt.

Algorithmus

Der Algorithmus zum Finden des 1. Januar an einem Sonntag in verschiedenen Jahren umfasst mehrere Schritte. Der erste Schritt besteht darin, die Anzahl der Tage zwischen dem aktuellen Jahr und dem Jahr zu berechnen, in dem Sie den 1. Januar als Sonntag finden möchten. Der zweite Schritt besteht darin, den Wochentag zu ermitteln, auf den der 1. Januar des aktuellen Jahres fällt, und der dritte Schritt besteht darin, die Anzahl der Sonntage zwischen dem 1. Januar und dem 1. Januar des aktuellen Jahres im Bereich von zu ermitteln Jahre.

Die Bedeutung dieses Algorithmus liegt in seiner Einfachheit und Effizienz. Mit diesem Algorithmus können Sie schnell und einfach eine Reihe von Jahren finden, in denen der 1. Januar auf einen Sonntag fällt.

Methode 1

Diese Methode verwendet eine for-Schleife, um den Jahresbereich vom Startjahr bis zum Endjahr zu durchlaufen, und für jedes Jahr wird ein neues Date-Objekt erstellt, das das Jahr und den Monat enthält (indiziert auf Basis von 0, also ist Januar 0). und Tag(1) als Parameter. Verwenden Sie dann die Methode getDay(), um den Wochentag für den 1. Januar des aktuellen Jahres abzurufen (ein 0-basierter Index, also ist Sonntag 0). Wenn der Wochentag 0 ist, wird das Jahr zum Array firstSunday hinzugefügt. Als Ergebnis wird schließlich das Array firstSunday zurückgegeben.

function findFirstSunday(startYear, endYear) {
   let firstSunday = [];
   for (let year = startYear; year <= endYear; year++) {
      let date = new Date(year, 0, 1);
      if (date.getDay() === 0) {	
         firstSunday.push(year);
      }
   }
   return firstSunday;
}

Beispiel 1

function findFirstSunday(startYear, endYear) {
   let firstSunday = [];
   for (let year = startYear; year <= endYear; year++) {
      let date = new Date(year, 0, 1);
      if (date.getDay() === 0) {	
         firstSunday.push(year);
      }
   }
   return firstSunday;
}
let startYear = 2000;
let endYear = 2050;
let firstSunday = findFirstSunday(startYear, endYear);
console.log(firstSunday);

Methode 2

Diese Methode ähnelt der ersten Methode, weist jedoch geringfügige Änderungen auf. Die Variable dayOfWeek wird berechnet, indem 6 zum Ergebnis von getDay() addiert und dann mit dem Modulo-Operator (%) durch 7 dividiert wird, um den Rest zu ermitteln. Dadurch wird sichergestellt, dass der Wochentag immer im Bereich von 0 bis 6 liegt, wobei 0 den Sonntag darstellt. Wenn die Variable dayOfWeek den Wert 0 hat, wird das Jahr zum Array firstSunday hinzugefügt.

function findFirstSunday(startYear, endYear) {
   let firstSunday = [];
   for (let year = startYear; year <= endYear; year++) {
      let dayOfWeek = (new Date(year, 0, 1).getDay() + 6) % 7;
      if (dayOfWeek === 0) {
         firstSunday.push(year);
      }
   }
   return firstSunday;
}

Beispiel 2

function findFirstSunday(startYear, endYear) {
   let firstSunday = [];
   for (let year = startYear; year <= endYear; year++) {
      let dayOfWeek = (new Date(year, 0, 1).getDay() + 6) % 7;
      if (dayOfWeek === 0) {
         firstSunday.push(year);
      }
   }
   return firstSunday;
}
let startYear = 1990;
let endYear = 2020;
let firstSunday = findFirstSunday(startYear, endYear);
console.log(firstSunday);

Fazit

Zusammenfassend lässt sich sagen, dass es in JavaScript mithilfe des in diesem Artikel beschriebenen Algorithmus eine einfache Aufgabe ist, den 1. Januar als Sonntag in einer Reihe von Jahren zu finden. Wir stellen zwei unterschiedliche Ansätze mit Code und Erklärungen vor und stellen außerdem zwei ausgearbeitete Beispiele zur Verfügung, um die Verwendung der Algorithmen zu demonstrieren. Mithilfe dieses Algorithmus können Sie leicht eine Reihe von Jahren finden, in denen der 1. Januar auf einen Sonntag fällt, was für verschiedene Zwecke nützlich ist.

Das obige ist der detaillierte Inhalt vonFinden Sie in JavaScript eine Reihe von Jahren, in denen der 1. Januar ein Sonntag ist?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen