Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. [gelöst] Javascript: agressive Intervalle

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    [gelöst] Javascript: agressive Intervalle

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

      @paul53 Das wird wohl der richtige Ansatz für mich werden! Danke.
      Woran kannst du erkennen, dass es ein von Blockly erzeugter Code ist?

      Codierknecht paul53 2 Replies Last reply Reply Quote 0
      • Codierknecht
        Codierknecht Developer Most Active @Rene55 last edited by

        @rene55 sagte in Javascript: agressive Intervalle:

        Woran kannst du erkennen, dass es ein von Blockly erzeugter Code ist?

        Weil z.B. die Callbacks von kaum jemandem so geschrieben würden 😉

        Rene55 1 Reply Last reply Reply Quote 0
        • Rene55
          Rene55 @Codierknecht last edited by

          @codierknecht Fast gut geraten. Es soll eine Ansage werden dass ICH die Einnahme von Tabletten nicht vergesse. Die drei Sekunden sind hier natürlich zu Testzwecken. Werden dann wohl so ca. 6 Minuten werden. Hinzu kommt dannnoch die Möglichkeit (irgendein Taster), die Ansagen abzubrechen, wenn ich meine Pillen genommen habe.

          1 Reply Last reply Reply Quote 0
          • Rene55
            Rene55 @Codierknecht last edited by

            @codierknecht sagte in Javascript: agressive Intervalle:

            Callbacks

            Wie schreibt man die denn 'richtig'?

            Codierknecht 1 Reply Last reply Reply Quote 0
            • paul53
              paul53 @Rene55 last edited by paul53

              @rene55 sagte: Woran kannst du erkennen, dass es ein von Blockly erzeugter Code ist?

              Im ursprünglichen Code sind Zeilen 5 und 9 typische Blockly-Konstrukte, die man als Javascript-Programmierer i.d.R. so nicht schreiben würde.

              Rene55 1 Reply Last reply Reply Quote 1
              • Rene55
                Rene55 @paul53 last edited by Rene55

                @paul53 Ja, besonders Zeile 9 hätte ich aus meinem Hirn so nicht hinbekommen!

                1 Reply Last reply Reply Quote 0
                • Codierknecht
                  Codierknecht Developer Most Active @Rene55 last edited by

                  @rene55 sagte in [gelöst] Javascript: agressive Intervalle:

                  Wie schreibt man die denn 'richtig'?

                  Die sind ja nicht falsch. Aber die würden die meisten (oder zumindest so einige) Programmierer wohl etwas anders formulieren.
                  Wie @paul53 schon schreibt, ist auch gerade das Dekrimieren des Counter so "typisch Blockly".

                      if (counter) {
                          counter--;
                          doAnything(counter);
                      } else {
                          if (Intervall) { clearInterval(Intervall); Intervall = null; };
                          log('Fertig');
                      }
                  
                  paul53 1 Reply Last reply Reply Quote 0
                  • paul53
                    paul53 @Codierknecht last edited by

                    @codierknecht
                    Da der Teil innerhalb der Intervall-Callback-Funktion ausgeführt wird, kann man sich die Prüfung und das Rücksetzen auf null sparen.

                        if (counter > 0) {
                            counter--;
                            doAnything(counter);
                        } else {
                            clearInterval(Intervall);
                            log('Fertig');
                        }
                    

                    Die Prüfung "counter > 0" ist sinnvoll, wenn nicht garantiert werden kann, dass counter mit einer positiven ganzen Zahl initialisiert wurde.

                    Codierknecht 1 Reply Last reply Reply Quote 0
                    • Codierknecht
                      Codierknecht Developer Most Active @paul53 last edited by

                      @paul53 sagte in [gelöst] Javascript: agressive Intervalle:

                      kann man sich die Prüfung und das Rücksetzen auf null sparen

                      ... auch das 😉

                      Rene55 1 Reply Last reply Reply Quote 0
                      • Rene55
                        Rene55 @Codierknecht last edited by

                        @codierknecht @paul53 Danke euch beiden - wieder was gelernt 😊

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

                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        724
                        Online

                        31.7k
                        Users

                        79.7k
                        Topics

                        1.3m
                        Posts

                        4
                        17
                        357
                        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