pl: Hurrah es ist Sommerzeit

Ab heute brauchen wir wieder 2 Uhren 😉

Gibt es eine Möglichkeit, per JavaScript zu ermitteln ob DST gesetzt ist?

Bitte mal um Hinweises.

MfG

  1. @@pl

    Ab heute brauchen wir wieder 2 Uhren 😉

    Wieso ab heute? Ganzjährig! Eine für UTC, eine für die jeweilige lokale Zonenzeit.

    Gibt es eine Möglichkeit, per JavaScript zu ermitteln ob DST gesetzt ist?

    Date.getTimezoneOffset()

    Was hast du damit vor?

    LLAP 🖖

    --
    „Wer durch Wissen und Erfahrung der Klügere ist, der sollte nicht nachgeben. Und nicht aufgeben.“ —Kurt Weidemann
    1. hi

      Ab heute brauchen wir wieder 2 Uhren 😉

      Wieso ab heute? Ganzjährig! Eine für UTC, eine für die jeweilige lokale Zonenzeit.

      Damit wir zum Zurücksetzen im Herbst die richtige Uhrzeit haben.

      Gibt es eine Möglichkeit, per JavaScript zu ermitteln ob DST gesetzt ist?

      Date.getTimezoneOffset()

      Das liefert leider beides untrennbar zusammen.

      MfG

      1. @@pl

        Gibt es eine Möglichkeit, per JavaScript zu ermitteln ob DST gesetzt ist?

        Date.getTimezoneOffset()

        Das liefert leider beides untrennbar zusammen.

        Wie hättest du’s denn gern? Du willst wissen, ob -120 (also +02:00) für Osteuropäische (Winter-)Zeit oder für Mitteleuropäische Sommerzeit steht?

        Dazu müsstest du wohl einen Webservice anfragen, welche Zeitzone für ein bestimmtes Gebiet (welches du als Parameter übergeben müsstest) für einen bestimmten Zeitpunkt (z.B. den aktuellen) gilt.

        Ich würde erstmal versuchen herauszufinden, ob [Unicode Common Locale Data Repository (CLDR)](Unicode Common Locale Data Repository) oder International Components for Unicode (ICU) eine Schnittstelle dafür anbieten.

        LLAP 🖖

        --
        „Wer durch Wissen und Erfahrung der Klügere ist, der sollte nicht nachgeben. Und nicht aufgeben.“ —Kurt Weidemann
        1. hmm

          Wie hättest du’s denn gern? Du willst wissen, ob -120 (also +02:00) für Osteuropäische (Winter-)Zeit oder für Mitteleuropäische Sommerzeit steht?

          So kann man das auch formulieren.

          Dazu müsstest du wohl einen Webservice anfragen, welche Zeitzone für ein bestimmtes Gebiet (welches du als Parameter übergeben müsstest) für einen bestimmten Zeitpunkt (z.B. den aktuellen) gilt.

          Also das eingestellte Gebiet per JS abfragen.

          MfG

          --
          Führende Nullen sind das war vor der schwarzen Null kommt.
      2. Tach!

        Gibt es eine Möglichkeit, per JavaScript zu ermitteln ob DST gesetzt ist?

        Date.getTimezoneOffset()

        Das liefert leider beides untrennbar zusammen.

        Es gibt eine Lösung, die man durch einfaches Suchmaschinenbefragen findet, und die für den Hausgebrauch ausreichend genau zu sein scheint.

        Offset für den 1.1. und den 1.6. ermitteln, dann den Offsetwert vom gewünschten Datum, damit vergleichen.

        Für die Südhalbkugel ist aber die Definition von Sommer- und Winterzeit entgegengesetzt.

        dedlfix.

        1. Ja. Für eine Demo eine brauchbare Alternative.

          Schönen Sonntag 😉

        2. hmm,

          Für die Südhalbkugel ist aber die Definition von Sommer- und Winterzeit entgegengesetzt.

          function dstsugg(){
              let dati = new Date();
              let wint = new Date( dati.getFullYear(), 1, 1);
              return( dati.getTimezoneOffset() == wint.getTimezoneOffset() ? 0 : 1  );
          }
          

          sollte eigentlich von der Logik her beide Fälle abdecken nord wie süd.

          MfG

          1. Tach!

            sollte eigentlich von der Logik her beide Fälle abdecken nord wie süd.

            Nö, weil auf der Südhalbkugel am 1.1. DST ist, da ist deine Differenz zum aktuellen Offset aber gleich 0.

            dedlfix.

            1. Hallo dedlfix,

              d.h. man müsste eigentlich den Timezone-Offset vom 1.1. und vom 1.7. (oder 1.6.) nehmen und für die DST-Prüfung den kleineren von den beiden nehmen.

              Natürlich gilt das nur unter der Annahme, dass es kein Land gibt, das im Sommer die Uhr zurückdreht, damit es abends nicht so schrecklich lange hell ist.

              Rolf

              --
              sumpsi - posui - clusi
              1. hi>

                d.h. man müsste eigentlich den Timezone-Offset vom 1.1. und vom 1.7. (oder 1.6.) nehmen und für die DST-Prüfung den kleineren von den beiden nehmen.

                Mal'ne Wahrheitstabelle machen.

                Natürlich gilt das nur unter der Annahme, dass es kein Land gibt, das im Sommer die Uhr zurückdreht, damit es abends nicht so schrecklich lange hell ist.

                Es beginnt immer mit einer Annahme 😉

              2. Hallo @Rolf B,
                hallo Forum,

                Natürlich gilt das nur unter der Annahme, dass es kein Land gibt, das im Sommer die Uhr zurückdreht, damit es abends nicht so schrecklich lange hell ist.

                es ist noch viel lustiger: Es gibt (Bundes-) Länder/-Staaten, die keine Uhrenumstellung haben. Woher weiß denn den Browser z.B., dass er sich in New South Wales (hat Sommerzeit) oder in Victoria (hat keine Sommerzeit; beides Australien) befindet?

                Viele Grüße
                Robert

                1. Tach!

                  es ist noch viel lustiger: Es gibt (Bundes-) Länder/-Staaten, die keine Uhrenumstellung haben. Woher weiß denn den Browser z.B., dass er sich in New South Wales (hat Sommerzeit) oder in Victoria (hat keine Sommerzeit; beides Australien) befindet?

                  Den Ort muss er nicht wissen, aber die Zeitzoneneinstellung erfährt er vom Betriebssystem. Dort hat der Anwender beim Konfigurieren des Systems hoffentlich den richtigen Wert gewählt.

                  dedlfix.

  2. Hallo Rolf,

    ich nehme dafür die https://developers.google.com/maps/documentation/timezone/intro?hl=de.

    Gruß
    Jürgen