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 - Prüfung des Werts aller Objekte eines Arrays

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.6k

Blockly - Prüfung des Werts aller Objekte eines Arrays

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
javascriptblockly
9 Beiträge 4 Kommentatoren 1.1k Aufrufe 4 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.
  • D Offline
    D Offline
    daNick
    schrieb am zuletzt editiert von
    #1

    Hallo

    Ich habe in einem Array eine Liste mit Objekten, deren Wert "true/false" sein kann (in meinem Fall Anwesenheitssensoren).

    Gibt es eine elegante Möglichkeit ohne Schleife zu prüfen, ob der WERT all dieser Objekte, die im Array genannt sind, "true" oder "false" ist?

    Als Trigger kann man ja das Array nehmen (was schon sehr "elegant" ist).

    Danke!

    Gruß Nico

    M paul53P ? 4 Antworten Letzte Antwort
    0
    • D daNick

      Hallo

      Ich habe in einem Array eine Liste mit Objekten, deren Wert "true/false" sein kann (in meinem Fall Anwesenheitssensoren).

      Gibt es eine elegante Möglichkeit ohne Schleife zu prüfen, ob der WERT all dieser Objekte, die im Array genannt sind, "true" oder "false" ist?

      Als Trigger kann man ja das Array nehmen (was schon sehr "elegant" ist).

      Danke!

      Gruß Nico

      M Offline
      M Offline
      MCU
      schrieb am zuletzt editiert von
      #2

      @daNick Ein Ansatz vielleicht array.toString() und dann den String prüfen auf den gewünschten Wert false oder true.

      NUC i7 64GB mit Proxmox ---- Jarvis Infos Aktualisierungen der Doku auf Instagram verfolgen -> mcuiobroker Instagram
      Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

      1 Antwort Letzte Antwort
      0
      • D daNick

        Hallo

        Ich habe in einem Array eine Liste mit Objekten, deren Wert "true/false" sein kann (in meinem Fall Anwesenheitssensoren).

        Gibt es eine elegante Möglichkeit ohne Schleife zu prüfen, ob der WERT all dieser Objekte, die im Array genannt sind, "true" oder "false" ist?

        Als Trigger kann man ja das Array nehmen (was schon sehr "elegant" ist).

        Danke!

        Gruß Nico

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

        @daNick sagte:

        Array eine Liste mit Objekten

        Du meinst eine Liste mit Datenpunkt-IDs ?
        Was ist Dein Ziel ?

        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

        D 1 Antwort Letzte Antwort
        0
        • D daNick

          Hallo

          Ich habe in einem Array eine Liste mit Objekten, deren Wert "true/false" sein kann (in meinem Fall Anwesenheitssensoren).

          Gibt es eine elegante Möglichkeit ohne Schleife zu prüfen, ob der WERT all dieser Objekte, die im Array genannt sind, "true" oder "false" ist?

          Als Trigger kann man ja das Array nehmen (was schon sehr "elegant" ist).

          Danke!

          Gruß Nico

          ? Offline
          ? Offline
          Ein ehemaliger Benutzer
          schrieb am zuletzt editiert von Ein ehemaliger Benutzer
          #4

          @daNick

          .. in C war so etwas zu finden :-) Alle Elemente sind 0, wenn das erste Element 0 ist und jedes Element gleich dem Nachfolger ist:

          (a[0]==0) && (memcmp(a,a+1,sizeof(*a)*(a_len-1))==0) // a_len: Anzahl der Elemente in a. Der Typ von *a muss bitvergleichbar sein.
          

          Ansatz !

          LG Klaus

          1 Antwort Letzte Antwort
          0
          • paul53P paul53

            @daNick sagte:

            Array eine Liste mit Objekten

            Du meinst eine Liste mit Datenpunkt-IDs ?
            Was ist Dein Ziel ?

            D Offline
            D Offline
            daNick
            schrieb am zuletzt editiert von
            #5

            @paul53

            Danke für die Nachfrage.

            Meine Grundlage:

            Array in Blockly definiert mit Datenpunkt "occupy" von verschiedenen Sensoren.
            Das Script startet, wenn sich einer der Werte ändert.

            array .png

            Was ist jetzt gerne hätte:
            Prüfung, ob alle Datenpunkt des Arrays auf "false" sind (dann ist keiner mehr im Flur).

            Bisher prüfe ich ja nur, ob sich einer geändert hat.

            Wenn ich den Trigger von "wurde geändert" auf "ist unwahr" ändere, bringt das auch nichts (die Bedingung tritt ja ein, wenn EINER der Datenpunkte auf unwahr springt, ich überwache aber einen Raum mit 3 Sensoren).

            Macht das soweit Sinn?

            Gruß daNick

            1 Antwort Letzte Antwort
            0
            • D daNick

              Hallo

              Ich habe in einem Array eine Liste mit Objekten, deren Wert "true/false" sein kann (in meinem Fall Anwesenheitssensoren).

              Gibt es eine elegante Möglichkeit ohne Schleife zu prüfen, ob der WERT all dieser Objekte, die im Array genannt sind, "true" oder "false" ist?

              Als Trigger kann man ja das Array nehmen (was schon sehr "elegant" ist).

              Danke!

              Gruß Nico

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

              @daNick sagte:

              Möglichkeit ohne Schleife zu prüfen,

              Möglichkeit ohne Schleife "über alle Werte lesen": 2. Array, das die Werte enthält. Im Trigger ermittelt man den Index aus der ID und trägt den zugehörigen Wert in das Werte-Array ein.

              Blockly_temp.JPG

              prüft dann, ob mind. einer der Werte true ist.

              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

              D 1 Antwort Letzte Antwort
              0
              • paul53P paul53

                @daNick sagte:

                Möglichkeit ohne Schleife zu prüfen,

                Möglichkeit ohne Schleife "über alle Werte lesen": 2. Array, das die Werte enthält. Im Trigger ermittelt man den Index aus der ID und trägt den zugehörigen Wert in das Werte-Array ein.

                Blockly_temp.JPG

                prüft dann, ob mind. einer der Werte true ist.

                D Offline
                D Offline
                daNick
                schrieb am zuletzt editiert von
                #7

                @paul53

                Danke für Deine Zeit und den Support!

                Was mit nicht klar ist, ist der Schritt

                "Im Trigger ermittelt man den Index aus der ID und trägt den zugehörigen Wert in das Werte-Array ein."

                Wie sieht der Befehl aus, mit dem ich zu einem gegebenen Array, in dem Datenpunkt stehen, ein zweites Array gleicher Größe mit den Werten dieser Datenpunkte befülle?

                Danke!

                Gruß daNick

                paul53P 1 Antwort Letzte Antwort
                0
                • D daNick

                  @paul53

                  Danke für Deine Zeit und den Support!

                  Was mit nicht klar ist, ist der Schritt

                  "Im Trigger ermittelt man den Index aus der ID und trägt den zugehörigen Wert in das Werte-Array ein."

                  Wie sieht der Befehl aus, mit dem ich zu einem gegebenen Array, in dem Datenpunkt stehen, ein zweites Array gleicher Größe mit den Werten dieser Datenpunkte befülle?

                  Danke!

                  Gruß daNick

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

                  @daNick
                  Hier ein Beispiel. Man kann das Werte-Array bei Script start auch mittels einer Schleife befüllen.

                  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

                  D 1 Antwort Letzte Antwort
                  0
                  • paul53P paul53

                    @daNick
                    Hier ein Beispiel. Man kann das Werte-Array bei Script start auch mittels einer Schleife befüllen.

                    Blockly_temp.JPG

                    D Offline
                    D Offline
                    daNick
                    schrieb am zuletzt editiert von
                    #9

                    @paul53

                    Danke!

                    Gruß daNick

                    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

                    413

                    Online

                    32.7k

                    Benutzer

                    82.4k

                    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