Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. Iterate through objects

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Iterate through objects

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

      Hallo, ist es irgendwie möglich mit for each durch iobroker Objekte zu iterieren oder geht das nur in Enums?

      Ich habe z.B. diverse Shellys und möchte durch den Instanz-Folder iterieren um die External Temperaturen auszulesen ohne den Pfad zu kennen.

      T paul53 2 Replies Last reply Reply Quote 0
      • T
        ticaki Developer @larsz last edited by ticaki

        @larsz

        Das geht mit selectoren https://github.com/ioBroker/ioBroker.javascript/blob/master/docs/en/javascript.md#---selector

        z.B.:

        $('state(functions="beleuchtung")(rooms="Haus.second_floor.badezimmer")').each(id=> {setState(id, true);})
        const home = $('state[state.id=hm-rpc.1.*.LOW_BAT]');
        let dev = $('state[state.id=shelly.*.hostname]')
        var cWindows = [$('state(functions=sensor)(functions=window)')];
        

        Hab einfach wahllos beispiele aus meinen Skripts gewählt. Hab aber keine das so aussieht:

        const home = $('state[state.id=hm-rpc.1.*.LOW_BAT](functions=sensor)');
        

        sollte aber gehen. Liegt wohl daran, wenn ich in einer Datenpunkt gruppe suche unter einem Adapter braucht man keine function, da die bezeichnungen gleich sind.

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

          @larsz sagte: geht das nur in Enums?

          Das geht auch ohne Enums. Beispiel:

          $('shelly.0.*.Temperature$').each(function(id) { // Auswertung});
          
          L 1 Reply Last reply Reply Quote 1
          • L
            larsz @paul53 last edited by

            Danke euch, super, das hilft!

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

            Support us

            ioBroker
            Community Adapters
            Donate

            690
            Online

            31.6k
            Users

            79.6k
            Topics

            1.3m
            Posts

            3
            4
            374
            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