Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. Verständnisfrage Date()

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Verständnisfrage Date()

    This topic has been deleted. Only users with topic management privileges can see it.
    • ruhr70
      ruhr70 last edited by

      Hi zusammen,

      eine Verständnisfrage.

      Es soll folgender String verarbeitet werden (msg.payload ->1. Zeile):

      12.05.15 19:09:51
      01234567890123456
      

      Der Code dafür ist:

      var datum = msg.payload;
      //var datum = msg.date;
      //dd.mm.yy hh:mm:ss
      //01234567890123456
      
      var jahr = "20" + datum.substring(6,8);
      var monat = datum.substring(3,5);
      var tag = datum.substring(0,2);
      var stunde = datum.substring(9,11);
      var minute = datum.substring(12,14);
      var sekunde = datum.substring(15,17);
      
      

      Als Ausgabe erhalte ich:

      "2015-06-12T17:09:51.000Z"

      Warum steht dort beim Monat eine 06?

      Wenn ich mir die Variable monat ausgebe, steht dort eine 05.

      Viele Grüße,

      Michael

      1 Reply Last reply Reply Quote 0
      • Homoran
        Homoran Global Moderator Administrators last edited by

        Da war doch schon in den letzten tagen was mit falschem Datum in ioBroker.

        Aber anders rum:

        http://forum.iobroker.org/viewtopic.php?p=4971#p4971

        Gesendet von meinem Cynus T7 mit Tapatalk

        1 Reply Last reply Reply Quote 0
        • H
          HKF8770 last edited by

          Beschäftige mich erst seit kurzem mit Skripten. Wie testest du das am einfachsten? Ich hab es in der CCU2 Skript probiert, doch da hab ich keine Ausgabe. Habt Ihr da ein spezielles Programm?

          1 Reply Last reply Reply Quote 0
          • Bluefox
            Bluefox last edited by

            @ruhr70:

            Hi zusammen,

            eine Verständnisfrage.

            Es soll folgender String verarbeitet werden (msg.payload ->1. Zeile):

            12.05.15 19:09:51
            01234567890123456
            

            Der Code dafür ist:

            var datum = msg.payload;
            //var datum = msg.date;
            //dd.mm.yy hh:mm:ss
            //01234567890123456
            
            var jahr = "20" + datum.substring(6,8);
            var monat = datum.substring(3,5);
            var tag = datum.substring(0,2);
            var stunde = datum.substring(9,11);
            var minute = datum.substring(12,14);
            var sekunde = datum.substring(15,17);
            
            

            Als Ausgabe erhalte ich:

            "2015-06-12T17:09:51.000Z"

            Warum steht dort beim Monat eine 06?

            Wenn ich mir die Variable monat ausgebe, steht dort eine 05.

            Viele Grüße,

            Michael Zitat vom [http://www.w3schools.com/jsref/jsref_getmonth.asp](http://www.w3schools.com/jsref/jsref_getmonth.asp): > Definition and Usage

            The getMonth() method returns the month (from 0 to 11) for the specified date, according to local time.

            Note: January is 0, February is 1, and so on. `

            (from 0 to 11) , also Januar ist 0, Dezember ist 11

            1 Reply Last reply Reply Quote 0
            • ruhr70
              ruhr70 last edited by

              Danke Bluefox!

              oh je. Ich kann mir vorstellen, dass das für mich einiges an Fehlerpotential birgt.

              Bei der Eingabe Monat -1, um bei der Ausgabe den Monat richtig zu setzen und zu sehen.

              Wenn ich dann wieder auslese bekomme ich wieder Monat-1.

              Javascript, muss man halt wissen.

              Warum das ISO Format immer -2h ist (Zeitzone) und dann das "normale" Format dann die richtige Zone vom Rechner hat, ist auch so ein Fallstrick.

              Eigentlich wollte ich Epoche als Ausgabeformat haben. ISO war nur ein Zwischenschritt zur Kontrolle. Da wäre es mit nie aufgefallen, dass da dann ein Monat zu viel drin ist.

              Werde wohl jetzt alles, was mit Datumsumwandlung zu tun hat doppelt kontrollieren.

              Danke noch einmal Bluefox! Ihr Programmiere habt es nicht einfach ;-).

              Gesendet von iPhone mit Tapatalk

              1 Reply Last reply Reply Quote 0
              • ruhr70
                ruhr70 last edited by

                @HKF8770:

                Beschäftige mich erst seit kurzem mit Skripten. Wie testest du das am einfachsten? Ich hab es in der CCU2 Skript probiert, doch da hab ich keine Ausgabe. Habt Ihr da ein spezielles Programm? `

                In ioBroker, beim Javascript-Adapterin dem Du vieles als log ausgibst. D.h. eine Variable zur Kontrolle auch als log Funktion rein und dann im ioBroker Admin unter Log nachsehen.

                Zum Lernen finde ich Node-red innerhalb von ioBroker ideal. Dort kann man an den einzelnen Stellen Debug Nodes setzen und die Ausgabe dieser Nodes zur Laufzeit per Maus an und ausstellen. Anpassungen gehen super schnell und man sieht, was passiert.

                Alles schön Schritt für Schritt. Habe dadurch viel gelernt und dabei wenig Frust gehabt.

                Gesendet von iPhone mit Tapatalk

                1 Reply Last reply Reply Quote 0
                • First post
                  Last post

                Support us

                ioBroker
                Community Adapters
                Donate

                952
                Online

                31.9k
                Users

                80.1k
                Topics

                1.3m
                Posts

                4
                6
                1981
                Loading More Posts
                • Oldest to Newest
                • Newest to Oldest
                • Most Votes
                Reply
                • Reply as topic
                Log in to reply
                Community
                Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                The ioBroker Community 2014-2023
                logo