Skip to content
  • 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
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. ID vom Selektor: Liste trotz "für jeden" Schleife?

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.1k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.8k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.1k

ID vom Selektor: Liste trotz "für jeden" Schleife?

Geplant Angeheftet Gesperrt Verschoben Blockly
6 Beiträge 3 Kommentatoren 690 Aufrufe 2 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 Online
    A Online
    Ahnungsbefreit
    schrieb am zuletzt editiert von
    #1

    Hallo,

    ich bin eben über folgendes Verhalten mit JavaScript 5.0.14 gestolpert:

    Diese Schleife:
    53b8cf8f-ed0a-4061-8884-75c79dffe00c-image.png

    erzeugt wie erwartet für jeden Alarm-Eintrag eine Debug-Zeile:

    12:55:15.232	info	javascript.9 (16908) script.js.WIP.Skript_1: alexa2.0.Echo-Devices.xxx.Alarm.yyy.enabled
    12:55:15.232	info	javascript.9 (16908) script.js.WIP.Skript_1: alexa2.0.Echo-Devices.xxx.Alarm.yyy.enabled
    usw.
    

    Wenn ich dagegen mit dem folgenden Script auch die MusicAlarm-Einträge dazunehme:
    40ca4ef0-b51c-4b3e-bcb3-e42227f909e5-image.png

    Dann bekomme ich im Log nicht eine lange Liste mit allen Einträgen, sondern 2 Arrays wie das folgende:

    12:55:15.435	info	javascript.9 (16908) script.js.WIP.Skript_1: ['alexa2.0.Echo-Devices.xxx.MusicAlarm.yyy.enabled','alexa2.0.Echo-Devices.xxx.MusicAlarm.yyy.enabled','alexa2.0.Echo-Devices.xxx.MusicAlarm.yyy.enabled']
    

    Ist das so gewollt? Ich glaube eigentlich, dass in früheren Adapter-Versionen sich das nicht so verhalten hätte. So kann ich die "erzeuge Liste mit" nicht verwenden. Übrigens: Verwende ich die gleiche "erzeuge Liste..." als Trigger, werden korrekt "10 Subscriptions" angezeigt.

    Wenn meine Antwort hilfreich war, dürft Ihr das gerne durch einen "Upvote" (der kleine "^" unten rechts) zum Ausdruck bringen.

    paul53P 1 Antwort Letzte Antwort
    0
    • A Ahnungsbefreit

      Hallo,

      ich bin eben über folgendes Verhalten mit JavaScript 5.0.14 gestolpert:

      Diese Schleife:
      53b8cf8f-ed0a-4061-8884-75c79dffe00c-image.png

      erzeugt wie erwartet für jeden Alarm-Eintrag eine Debug-Zeile:

      12:55:15.232	info	javascript.9 (16908) script.js.WIP.Skript_1: alexa2.0.Echo-Devices.xxx.Alarm.yyy.enabled
      12:55:15.232	info	javascript.9 (16908) script.js.WIP.Skript_1: alexa2.0.Echo-Devices.xxx.Alarm.yyy.enabled
      usw.
      

      Wenn ich dagegen mit dem folgenden Script auch die MusicAlarm-Einträge dazunehme:
      40ca4ef0-b51c-4b3e-bcb3-e42227f909e5-image.png

      Dann bekomme ich im Log nicht eine lange Liste mit allen Einträgen, sondern 2 Arrays wie das folgende:

      12:55:15.435	info	javascript.9 (16908) script.js.WIP.Skript_1: ['alexa2.0.Echo-Devices.xxx.MusicAlarm.yyy.enabled','alexa2.0.Echo-Devices.xxx.MusicAlarm.yyy.enabled','alexa2.0.Echo-Devices.xxx.MusicAlarm.yyy.enabled']
      

      Ist das so gewollt? Ich glaube eigentlich, dass in früheren Adapter-Versionen sich das nicht so verhalten hätte. So kann ich die "erzeuge Liste mit" nicht verwenden. Übrigens: Verwende ich die gleiche "erzeuge Liste..." als Trigger, werden korrekt "10 Subscriptions" angezeigt.

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

      @ahnungsbefreit sagte: Ist das so gewollt?

      Ja. Der Blockly-Selektor ist schon immer ein Array.

      @ahnungsbefreit sagte in ID vom Selektor: Liste trotz "für jeden" Schleife?:

      Wenn ich dagegen mit dem folgenden Script auch die MusicAlarm-Einträge dazunehme:

      Lass einfach den Punkt vor Alarm weg.

      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
      0
      • paul53P paul53

        @ahnungsbefreit sagte: Ist das so gewollt?

        Ja. Der Blockly-Selektor ist schon immer ein Array.

        @ahnungsbefreit sagte in ID vom Selektor: Liste trotz "für jeden" Schleife?:

        Wenn ich dagegen mit dem folgenden Script auch die MusicAlarm-Einträge dazunehme:

        Lass einfach den Punkt vor Alarm weg.

        A Online
        A Online
        Ahnungsbefreit
        schrieb am zuletzt editiert von
        #3

        @paul53 ok, aber durch die "für jeden Wert i aus der Liste" sollte ich doch die Einträge der Liste einzeln erhalten, so wie beim 1.Blockly, oder?

        Wenn meine Antwort hilfreich war, dürft Ihr das gerne durch einen "Upvote" (der kleine "^" unten rechts) zum Ausdruck bringen.

        paul53P haus-automatisierungH 2 Antworten Letzte Antwort
        0
        • A Ahnungsbefreit

          @paul53 ok, aber durch die "für jeden Wert i aus der Liste" sollte ich doch die Einträge der Liste einzeln erhalten, so wie beim 1.Blockly, oder?

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

          @ahnungsbefreit sagte: aber durch die "für jeden Wert i aus der Liste" sollte ich doch die Einträge der Liste einzeln erhalten

          Deine Liste ist ein Array, bestehend aus 2 Arrays, also 2 Einträge.

          So kann man beide Selektoren zu einem Array machen:

          Bild_2021-03-22_133235.png

          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
          1
          • A Ahnungsbefreit

            @paul53 ok, aber durch die "für jeden Wert i aus der Liste" sollte ich doch die Einträge der Liste einzeln erhalten, so wie beim 1.Blockly, oder?

            haus-automatisierungH Online
            haus-automatisierungH Online
            haus-automatisierung
            Developer Most Active
            schrieb am zuletzt editiert von
            #5

            @ahnungsbefreit sagte in ID vom Selektor: Liste trotz "für jeden" Schleife?:

            aber durch die "für jeden Wert i aus der Liste" sollte ich doch die Einträge der Liste einzeln erhalten, so wie beim 1.Blockly, oder?

            Bekommst Du doch auch geliefert? Ein Array enthält halt zwei weitere Arrays. Iterierst Du nun über das erste, bekommst Du jeweils ein Array zurück.

            Du müsstest die Arrays mergen anstatt ein neues zu erstellen um das gewünschte Verhalten zu erreichen.

            🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
            🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
            📚 Meine inoffizielle ioBroker Dokumentation

            A 1 Antwort Letzte Antwort
            0
            • haus-automatisierungH haus-automatisierung

              @ahnungsbefreit sagte in ID vom Selektor: Liste trotz "für jeden" Schleife?:

              aber durch die "für jeden Wert i aus der Liste" sollte ich doch die Einträge der Liste einzeln erhalten, so wie beim 1.Blockly, oder?

              Bekommst Du doch auch geliefert? Ein Array enthält halt zwei weitere Arrays. Iterierst Du nun über das erste, bekommst Du jeweils ein Array zurück.

              Du müsstest die Arrays mergen anstatt ein neues zu erstellen um das gewünschte Verhalten zu erreichen.

              A Online
              A Online
              Ahnungsbefreit
              schrieb am zuletzt editiert von
              #6

              @haus-automatisierung @paul53 Danke für die schnelle Antwort. Ich habe mir jetzt so geholfen:
              f20b1391-bb02-4dac-a88d-9d8594c8299f-image.png

              Und arrayConcat macht einfach genau das:

              return arr1.concat(arr2);
              

              Danke!

              Wenn meine Antwort hilfreich war, dürft Ihr das gerne durch einen "Upvote" (der kleine "^" unten rechts) zum Ausdruck bringen.

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


              Support us

              ioBroker
              Community Adapters
              Donate

              732

              Online

              32.4k

              Benutzer

              81.4k

              Themen

              1.3m

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

              • Du hast noch kein Konto? Registrieren

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