Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. [gelöst] Javascript verwendet falsches Datum

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    16
    1
    1.2k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    766

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.0k

[gelöst] Javascript verwendet falsches Datum

Geplant Angeheftet Gesperrt Verschoben Blockly
17 Beiträge 4 Kommentatoren 997 Aufrufe 3 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • A Offline
    A Offline
    AchimKa
    schrieb am zuletzt editiert von AchimKa
    #1

    Ich habe jetzt schon einige Zeit über die Suche versucht, die Lösung für mein Problem zu finden, aber ohne Erfolg. Deshalb muss ich es doch mit einer eigenen Frage versuchen:

    Ich habe heute festgestellt, dass Javascript mit der falschen Zeit zu arbeiten scheint.
    Wenn ich folgendes Testscript ausführe, erscheint im Protokoll die UTC Zeit.

    log(new Date());
    

    Logeintrag:

    036F8294-A3C0-4107-AC06-3BC6F497949C_4_5005_c.jpeg

    der ioBroker läuft auf einem Raspberry Pi 5. Die Zeitzone ist korrekt auf Vienna eingestellt:

    89A342E7-77CD-44B6-9FA6-86BD50B0477B.jpeg

    Gibt es etwas, das ich übersehen habe?

    LG, Achim

    ArmilarA 1 Antwort Letzte Antwort
    0
    • crunchipC Offline
      crunchipC Offline
      crunchip
      Forum Testing Most Active
      schrieb am zuletzt editiert von crunchip
      #2

      @achimka sagte in Javascript verwendet falsches Datum:

      Gibt es etwas, das ich übersehen habe?

      frisch eingerichtet? mal neu gestartet?

      edit
      weil ichs bei mir grad selbst getestet hab, bei mir wird auch utc gezeigt
      aber
      hab dann das gefunden, könnte auch am Browser liegen, siehe
      https://213.136.68.177/post/453247

      umgestiegen von Proxmox auf Unraid

      A 1 Antwort Letzte Antwort
      0
      • A AchimKa

        Ich habe jetzt schon einige Zeit über die Suche versucht, die Lösung für mein Problem zu finden, aber ohne Erfolg. Deshalb muss ich es doch mit einer eigenen Frage versuchen:

        Ich habe heute festgestellt, dass Javascript mit der falschen Zeit zu arbeiten scheint.
        Wenn ich folgendes Testscript ausführe, erscheint im Protokoll die UTC Zeit.

        log(new Date());
        

        Logeintrag:

        036F8294-A3C0-4107-AC06-3BC6F497949C_4_5005_c.jpeg

        der ioBroker läuft auf einem Raspberry Pi 5. Die Zeitzone ist korrekt auf Vienna eingestellt:

        89A342E7-77CD-44B6-9FA6-86BD50B0477B.jpeg

        Gibt es etwas, das ich übersehen habe?

        LG, Achim

        ArmilarA Offline
        ArmilarA Offline
        Armilar
        Most Active Forum Testing
        schrieb am zuletzt editiert von Armilar
        #3

        @achimka sagte in Javascript verwendet falsches Datum:

        log(new Date());

        log(new Date().toLocaleString("de-DE", {timeZone: "Europe/Berlin"}));
        

        Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
        https://github.com/joBr99/nspanel-lovelace-ui/wiki

        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

        A 1 Antwort Letzte Antwort
        0
        • ArmilarA Armilar

          @achimka sagte in Javascript verwendet falsches Datum:

          log(new Date());

          log(new Date().toLocaleString("de-DE", {timeZone: "Europe/Berlin"}));
          
          A Offline
          A Offline
          AchimKa
          schrieb am zuletzt editiert von AchimKa
          #4

          @armilar Das Problem ist folgendes:

          Alle Zeitberechnungen sind um 2 Stunden verschoben. Wenn ich ein Datum ohne Uhrzeit konvertiere, wird nicht 0:00 Uhr, sondern 2:00 Uhr ausgegeben:

          1D26A398-6A01-476A-8612-F1D2FFFFA8F9.jpeg

          Ergebnis im Protokoll:

          03F4F99E-8C6F-4680-A2BE-81B5625EF3D0_4_5005_c.jpeg

          Dementsprechend sind auch alle Zeitfensterberechnungen, die ich im Anschluss durchführen möchte, fehlerhaft.

          ArmilarA 1 Antwort Letzte Antwort
          0
          • crunchipC crunchip

            @achimka sagte in Javascript verwendet falsches Datum:

            Gibt es etwas, das ich übersehen habe?

            frisch eingerichtet? mal neu gestartet?

            edit
            weil ichs bei mir grad selbst getestet hab, bei mir wird auch utc gezeigt
            aber
            hab dann das gefunden, könnte auch am Browser liegen, siehe
            https://213.136.68.177/post/453247

            A Offline
            A Offline
            AchimKa
            schrieb am zuletzt editiert von
            #5

            @crunchip sagte in Javascript verwendet falsches Datum:

            @achimka sagte in Javascript verwendet falsches Datum:

            Gibt es etwas, das ich übersehen habe?

            frisch eingerichtet? mal neu gestartet?

            edit
            weil ichs bei mir grad selbst getestet hab, bei mir wird auch utc gezeigt
            aber
            hab dann das gefunden, könnte auch am Browser liegen, siehe
            https://213.136.68.177/post/453247

            Neu gestartet: ja
            Alle Upgrades im OS eingespielt: auch ja

            Inwieweit das am Browser liegen soll, ist mir unklar. Die Berechnung wird doch auf dem Raspi ausgeführt, oder?

            1 Antwort Letzte Antwort
            0
            • A AchimKa

              @armilar Das Problem ist folgendes:

              Alle Zeitberechnungen sind um 2 Stunden verschoben. Wenn ich ein Datum ohne Uhrzeit konvertiere, wird nicht 0:00 Uhr, sondern 2:00 Uhr ausgegeben:

              1D26A398-6A01-476A-8612-F1D2FFFFA8F9.jpeg

              Ergebnis im Protokoll:

              03F4F99E-8C6F-4680-A2BE-81B5625EF3D0_4_5005_c.jpeg

              Dementsprechend sind auch alle Zeitfensterberechnungen, die ich im Anschluss durchführen möchte, fehlerhaft.

              ArmilarA Offline
              ArmilarA Offline
              Armilar
              Most Active Forum Testing
              schrieb am zuletzt editiert von Armilar
              #6

              @achimka

              ist der Datenpunkt vom Typ Date oder String?

              4028b539-d012-465a-836f-91b0e321a7a2-image.png

              Ansonsten kurz die Objektdaten posten

              Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
              https://github.com/joBr99/nspanel-lovelace-ui/wiki

              Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

              A 1 Antwort Letzte Antwort
              0
              • ArmilarA Armilar

                @achimka

                ist der Datenpunkt vom Typ Date oder String?

                4028b539-d012-465a-836f-91b0e321a7a2-image.png

                Ansonsten kurz die Objektdaten posten

                A Offline
                A Offline
                AchimKa
                schrieb am zuletzt editiert von
                #7

                @armilar sagte in Javascript verwendet falsches Datum:

                Ansonsten kurz die Objektdaten posten

                {
                  "common": {
                    "name": "Batterie Netzladung manuell am",
                    "desc": "Manuell erzeugt",
                    "role": "state",
                    "type": "number",
                    "read": true,
                    "write": true,
                    "def": 0
                  },
                  "type": "state",
                  "native": {},
                  "from": "system.adapter.admin.0",
                  "user": "system.user.admin",
                  "ts": 1727883852771,
                  "_id": "0_userdata.0.Einstellungen.Batterie_Netzladung_manuell_am",
                  "acl": {
                    "object": 1636,
                    "state": 1636,
                    "owner": "system.user.admin",
                    "ownerGroup": "system.group.administrator"
                  }
                }
                
                ArmilarA 1 Antwort Letzte Antwort
                0
                • A AchimKa

                  @armilar sagte in Javascript verwendet falsches Datum:

                  Ansonsten kurz die Objektdaten posten

                  {
                    "common": {
                      "name": "Batterie Netzladung manuell am",
                      "desc": "Manuell erzeugt",
                      "role": "state",
                      "type": "number",
                      "read": true,
                      "write": true,
                      "def": 0
                    },
                    "type": "state",
                    "native": {},
                    "from": "system.adapter.admin.0",
                    "user": "system.user.admin",
                    "ts": 1727883852771,
                    "_id": "0_userdata.0.Einstellungen.Batterie_Netzladung_manuell_am",
                    "acl": {
                      "object": 1636,
                      "state": 1636,
                      "owner": "system.user.admin",
                      "ownerGroup": "system.group.administrator"
                    }
                  }
                  
                  ArmilarA Offline
                  ArmilarA Offline
                  Armilar
                  Most Active Forum Testing
                  schrieb am zuletzt editiert von Armilar
                  #8

                  @achimka

                  huch - warum number?

                  ändere den mal auf String, wenn der nur das Datum hat...

                  siehe:
                  9165b96c-e87d-4e63-85e5-15d3f21319ce-image.png

                  499546ba-7b5f-49d4-b729-d515f9df0db5-image.png

                  oder direkt in Date...

                  number müsste doch in der Form Warnungen im Log bringen...

                  Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
                  https://github.com/joBr99/nspanel-lovelace-ui/wiki

                  Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                  A 2 Antworten Letzte Antwort
                  0
                  • ArmilarA Armilar

                    @achimka

                    huch - warum number?

                    ändere den mal auf String, wenn der nur das Datum hat...

                    siehe:
                    9165b96c-e87d-4e63-85e5-15d3f21319ce-image.png

                    499546ba-7b5f-49d4-b729-d515f9df0db5-image.png

                    oder direkt in Date...

                    number müsste doch in der Form Warnungen im Log bringen...

                    A Offline
                    A Offline
                    AchimKa
                    schrieb am zuletzt editiert von
                    #9

                    @armilar sagte in Javascript verwendet falsches Datum:

                    @achimka

                    huch - warum number?

                    ändere den mal auf String, wenn der nur das Datum hat...

                    Ich hab den Datentyp jetzt auf String geändert und das Datum über mein VIS-Frontend auf 3.10.2024 geändert. Ausgabe im Protokoll wieder um 2 Stunden verschoben:

                    3E917F8F-E23C-4037-AE8D-FF0C37A205C0.jpeg

                    270FE5E7-EC7F-4273-A638-ED5DFD3CFA3B.jpeg

                    C131DE68-2493-4421-924C-76CFE397A75C.jpeg

                    1 Antwort Letzte Antwort
                    0
                    • ArmilarA Armilar

                      @achimka

                      huch - warum number?

                      ändere den mal auf String, wenn der nur das Datum hat...

                      siehe:
                      9165b96c-e87d-4e63-85e5-15d3f21319ce-image.png

                      499546ba-7b5f-49d4-b729-d515f9df0db5-image.png

                      oder direkt in Date...

                      number müsste doch in der Form Warnungen im Log bringen...

                      A Offline
                      A Offline
                      AchimKa
                      schrieb am zuletzt editiert von
                      #10

                      @armilar sagte in Javascript verwendet falsches Datum:

                      number müsste doch in der Form Warnungen im Log bringen...

                      Ich setze das Datum in VIS über ctrl - Input Date. Ich ging davon aus, dass dann der Unix-Timestamp für 00:00:00 gespeichert wird und man direkt damit rechnen kann. Deswegen der Versuch mit Number. Aber wie du siehst, führt auch Text zum gleichen (falschen) Ergebnis.

                      ArmilarA 1 Antwort Letzte Antwort
                      0
                      • A AchimKa

                        @armilar sagte in Javascript verwendet falsches Datum:

                        number müsste doch in der Form Warnungen im Log bringen...

                        Ich setze das Datum in VIS über ctrl - Input Date. Ich ging davon aus, dass dann der Unix-Timestamp für 00:00:00 gespeichert wird und man direkt damit rechnen kann. Deswegen der Versuch mit Number. Aber wie du siehst, führt auch Text zum gleichen (falschen) Ergebnis.

                        ArmilarA Offline
                        ArmilarA Offline
                        Armilar
                        Most Active Forum Testing
                        schrieb am zuletzt editiert von
                        #11

                        @achimka

                        Stimmt, wie soll das denn weiterverarbeitet werden?

                        Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
                        https://github.com/joBr99/nspanel-lovelace-ui/wiki

                        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                        A 1 Antwort Letzte Antwort
                        0
                        • ArmilarA Armilar

                          @achimka

                          Stimmt, wie soll das denn weiterverarbeitet werden?

                          A Offline
                          A Offline
                          AchimKa
                          schrieb am zuletzt editiert von
                          #12

                          @armilar sagte in Javascript verwendet falsches Datum:

                          @achimka

                          Stimmt, wie soll das denn weiterverarbeitet werden?

                          Es geht um die geplante Ladung meiner PV-Batterie aus dem Netz bei flexiblem Stromtarif. Deswegen habe ich eine Datumsangabe, einen Startzeitpunkt in vollen Stunden, aus dem ich dann einen vollständigen Timestamp zusammensetzen möchte, und eine Ladedauer in vollen Stunden.

                          7194D54C-65E0-4F35-9452-52BE18A73E74_4_5005_c.jpeg

                          Wenn Ladedatum jetzt tatsächlich 00:00:00 Uhr wäre, dann könnte ich so meinen Startzeitpunkt errechnen:

                          FA5A28E0-F929-42E8-ABC6-957E2C5B1E32_4_5005_c.jpeg

                          Nur leider ist mein errechneter Startzeitpunkt zwei Stunden zu spät!

                          ArmilarA paul53P 2 Antworten Letzte Antwort
                          0
                          • A AchimKa

                            @armilar sagte in Javascript verwendet falsches Datum:

                            @achimka

                            Stimmt, wie soll das denn weiterverarbeitet werden?

                            Es geht um die geplante Ladung meiner PV-Batterie aus dem Netz bei flexiblem Stromtarif. Deswegen habe ich eine Datumsangabe, einen Startzeitpunkt in vollen Stunden, aus dem ich dann einen vollständigen Timestamp zusammensetzen möchte, und eine Ladedauer in vollen Stunden.

                            7194D54C-65E0-4F35-9452-52BE18A73E74_4_5005_c.jpeg

                            Wenn Ladedatum jetzt tatsächlich 00:00:00 Uhr wäre, dann könnte ich so meinen Startzeitpunkt errechnen:

                            FA5A28E0-F929-42E8-ABC6-957E2C5B1E32_4_5005_c.jpeg

                            Nur leider ist mein errechneter Startzeitpunkt zwei Stunden zu spät!

                            ArmilarA Offline
                            ArmilarA Offline
                            Armilar
                            Most Active Forum Testing
                            schrieb am zuletzt editiert von
                            #13

                            @achimka

                            0dfdbda6-567a-4671-893e-f6feb648bdab-image.png

                            Was passiert, wenn du die 2 Stunden so subtrahierst?

                            Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
                            https://github.com/joBr99/nspanel-lovelace-ui/wiki

                            Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                            A paul53P 2 Antworten Letzte Antwort
                            0
                            • ArmilarA Armilar

                              @achimka

                              0dfdbda6-567a-4671-893e-f6feb648bdab-image.png

                              Was passiert, wenn du die 2 Stunden so subtrahierst?

                              A Offline
                              A Offline
                              AchimKa
                              schrieb am zuletzt editiert von AchimKa
                              #14

                              @armilar sagte in Javascript verwendet falsches Datum:

                              Was passiert, wenn du die 2 Stunden so subtrahierst?

                              Das wird vermutlich schon funktionieren, allerdings nur bis Ende Oktober. Mit Beginn der Winterzeit wird sich der Abstand auf eine Stunde reduzieren.

                              Ich werde jetzt versuchen, das Startdatum anders zusammenzusetzen. Allerdings würde ich schon gerne verstehen, was die Ursache für die Datumsabweichung ist. Ich wundere mich, dass es nicht mehr Meldungen zu diesem Problem gibt. Im Grunde simple Zeitschaltfunktionen werden so unnötig kompliziert.

                              1 Antwort Letzte Antwort
                              0
                              • ArmilarA Armilar

                                @achimka

                                0dfdbda6-567a-4671-893e-f6feb648bdab-image.png

                                Was passiert, wenn du die 2 Stunden so subtrahierst?

                                paul53P Offline
                                paul53P Offline
                                paul53
                                schrieb am zuletzt editiert von paul53
                                #15

                                @armilar sagte: Was passiert, wenn du die 2 Stunden so subtrahierst?

                                Das Format "2.10.2024" funktioniert nicht, denn es wird falsch interpretiert (Monat als Tag und umgekehrt). Außerdem muss eine Uhrzeit mitgegeben werden, da sonst 0:00 Uhr UTC verwendet wird.
                                So erfolgt die richtige Auswertung:

                                Blockly_temp.JPG

                                Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                                Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                                1 Antwort Letzte Antwort
                                2
                                • A AchimKa

                                  @armilar sagte in Javascript verwendet falsches Datum:

                                  @achimka

                                  Stimmt, wie soll das denn weiterverarbeitet werden?

                                  Es geht um die geplante Ladung meiner PV-Batterie aus dem Netz bei flexiblem Stromtarif. Deswegen habe ich eine Datumsangabe, einen Startzeitpunkt in vollen Stunden, aus dem ich dann einen vollständigen Timestamp zusammensetzen möchte, und eine Ladedauer in vollen Stunden.

                                  7194D54C-65E0-4F35-9452-52BE18A73E74_4_5005_c.jpeg

                                  Wenn Ladedatum jetzt tatsächlich 00:00:00 Uhr wäre, dann könnte ich so meinen Startzeitpunkt errechnen:

                                  FA5A28E0-F929-42E8-ABC6-957E2C5B1E32_4_5005_c.jpeg

                                  Nur leider ist mein errechneter Startzeitpunkt zwei Stunden zu spät!

                                  paul53P Offline
                                  paul53P Offline
                                  paul53
                                  schrieb am zuletzt editiert von
                                  #16

                                  @achimka sagte: Startzeitpunkt zwei Stunden zu spät!

                                  Mache eine String-Verkettung aus Datum und Stunde:

                                  Blockly_temp.JPG

                                  Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                                  Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                                  A 1 Antwort Letzte Antwort
                                  3
                                  • paul53P paul53

                                    @achimka sagte: Startzeitpunkt zwei Stunden zu spät!

                                    Mache eine String-Verkettung aus Datum und Stunde:

                                    Blockly_temp.JPG

                                    A Offline
                                    A Offline
                                    AchimKa
                                    schrieb am zuletzt editiert von
                                    #17

                                    @paul53 sagte in Javascript verwendet falsches Datum:

                                    Das Format "2.10.2024" funktioniert nicht, denn es wird falsch interpretiert (Monat als Tag und umgekehrt). Außerdem muss eine Uhrzeit mitgegeben werden, da sonst 0:00 Uhr UTC verwendet wird.

                                    Ja, mein Denkfehler war davon auszugehen, dass alle Datum-/Zeit-Funktionen in Javascript die lokalen Systemzeit-Einstellungen verwenden. Das tun sie offensichtlich nicht. Deshalb gebe ich bei der Umwandlung eines reinen Datums jetzt immer die Uhrzeit 00:00:00 mit. Ich teste das noch etwas aus, denke aber, dass mein Problem damit gelöst ist.

                                    1 Antwort Letzte Antwort
                                    0
                                    Antworten
                                    • In einem neuen Thema antworten
                                    Anmelden zum Antworten
                                    • Älteste zuerst
                                    • Neuste zuerst
                                    • Meiste Stimmen


                                    Support us

                                    ioBroker
                                    Community Adapters
                                    Donate

                                    773

                                    Online

                                    32.6k

                                    Benutzer

                                    82.0k

                                    Themen

                                    1.3m

                                    Beiträge
                                    Community
                                    Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                    ioBroker Community 2014-2025
                                    logo
                                    • Anmelden

                                    • Du hast noch kein Konto? Registrieren

                                    • Anmelden oder registrieren, um zu suchen
                                    • Erster Beitrag
                                      Letzter Beitrag
                                    0
                                    • Home
                                    • Aktuell
                                    • Tags
                                    • Ungelesen 0
                                    • Kategorien
                                    • Unreplied
                                    • Beliebt
                                    • GitHub
                                    • Docu
                                    • Hilfe