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. JavaScript
  5. Fehler bei konstanten Variablen

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    484

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.6k

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

Fehler bei konstanten Variablen

Geplant Angeheftet Gesperrt Verschoben JavaScript
7 Beiträge 4 Kommentatoren 706 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.
  • P Offline
    P Offline
    Pat
    schrieb am zuletzt editiert von
    #1

    Ich habe bei all meinem Skripten ein Fehler bei den ich konstanten Variablen verwende.
    Und zwar ist "zimmer" rot unterstrichen mit der Fehlermeldung "index2.js(x, x): 'xyz' was also declared here."

    const zimmer = rooms()[6]; // Welches Zimmer
    

    Diese "const" habe ich vielen Skripten verwendet die "rooms()" kommt aus aus dem "Global".
    Aber es betrifft auch const die nicht aus dem Global kommen die ich aber auch in einigen Skripten verwende.
    z.B.

    const script_path = 'javascript.' + 0 + '.Heizung.' + zimmer; // Vorgabe des Pfades des Scriptes
    

    Dort steht zusätzlich die Fehlermeldung "Cannot redeclare block-scoped variable 'script_path'." drin. Hier ist "script_path" rot unterstrichen.

    Wenn ich den Befehl export drunter schreibe verschwinden die Fehler!

    const zimmer = rooms()[6]; // Welches Zimmer
    const script_path = 'javascript.' + 0 + '.Heizung.' + zimmer; // Vorgabe des Pfades des Scriptes
    export{};
    

    Kann mir einer vielleicht sagen woran dies liegen kann??

    Vielen Dank schonmal

    A OliverIOO AlCalzoneA 3 Antworten Letzte Antwort
    0
    • P Pat

      Ich habe bei all meinem Skripten ein Fehler bei den ich konstanten Variablen verwende.
      Und zwar ist "zimmer" rot unterstrichen mit der Fehlermeldung "index2.js(x, x): 'xyz' was also declared here."

      const zimmer = rooms()[6]; // Welches Zimmer
      

      Diese "const" habe ich vielen Skripten verwendet die "rooms()" kommt aus aus dem "Global".
      Aber es betrifft auch const die nicht aus dem Global kommen die ich aber auch in einigen Skripten verwende.
      z.B.

      const script_path = 'javascript.' + 0 + '.Heizung.' + zimmer; // Vorgabe des Pfades des Scriptes
      

      Dort steht zusätzlich die Fehlermeldung "Cannot redeclare block-scoped variable 'script_path'." drin. Hier ist "script_path" rot unterstrichen.

      Wenn ich den Befehl export drunter schreibe verschwinden die Fehler!

      const zimmer = rooms()[6]; // Welches Zimmer
      const script_path = 'javascript.' + 0 + '.Heizung.' + zimmer; // Vorgabe des Pfades des Scriptes
      export{};
      

      Kann mir einer vielleicht sagen woran dies liegen kann??

      Vielen Dank schonmal

      A Offline
      A Offline
      Ahnungsbefreit
      schrieb am zuletzt editiert von
      #2

      @pat Alles, was in einem Script im Ordner "global" deklariert wurde, wird automatisch an alle anderen Scripts dran gehängt. Daher sollte man "global" wirklich nur für Sachen nutzen, die man wirklich in fast allen Scripten braucht. Könnte es nicht einfach daran liegen?

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

      P 1 Antwort Letzte Antwort
      0
      • A Ahnungsbefreit

        @pat Alles, was in einem Script im Ordner "global" deklariert wurde, wird automatisch an alle anderen Scripts dran gehängt. Daher sollte man "global" wirklich nur für Sachen nutzen, die man wirklich in fast allen Scripten braucht. Könnte es nicht einfach daran liegen?

        P Offline
        P Offline
        Pat
        schrieb am zuletzt editiert von
        #3

        @ahnungsbefreit
        Nabend

        Also die "rooms()" will ich ja in jedem Skript haben da ich dort ein Array habe mit all meinem räumen somit muss ich nicht im jeden Skript die neu anlegen.

        Da ich ich in jedem Skript wo ich die Räume brauche auch immer die const mir "zimmer" genannt habe das er deshalb meckert. Wenn ich die zimmer1 umbenenne ist der Fehler auch weg. Aber eigentlich dürft es ihn nicht stören.

        Und warum ist der Fehler weg mit export ??

        PS. Die Skripte funktionieren alle. Es ist nur weil mich das stört.

        A 1 Antwort Letzte Antwort
        0
        • P Pat

          @ahnungsbefreit
          Nabend

          Also die "rooms()" will ich ja in jedem Skript haben da ich dort ein Array habe mit all meinem räumen somit muss ich nicht im jeden Skript die neu anlegen.

          Da ich ich in jedem Skript wo ich die Räume brauche auch immer die const mir "zimmer" genannt habe das er deshalb meckert. Wenn ich die zimmer1 umbenenne ist der Fehler auch weg. Aber eigentlich dürft es ihn nicht stören.

          Und warum ist der Fehler weg mit export ??

          PS. Die Skripte funktionieren alle. Es ist nur weil mich das stört.

          A Offline
          A Offline
          Ahnungsbefreit
          schrieb am zuletzt editiert von
          #4

          @pat sagte in Fehler bei konstanten Variablen:

          Da ich ich in jedem Skript wo ich die Räume brauche auch immer die const mir "zimmer" genannt habe das er deshalb meckert. Wenn ich die zimmer1 umbenenne ist der Fehler auch weg. Aber eigentlich dürft es ihn nicht stören.

          Wenn er in jedem Script "meckert", sobald Du eine const zimmer deklarierst, kann das eigentlich nur bedeuten, dass Du das auch in einem "global" script deklariert hast

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

          1 Antwort Letzte Antwort
          0
          • P Pat

            Ich habe bei all meinem Skripten ein Fehler bei den ich konstanten Variablen verwende.
            Und zwar ist "zimmer" rot unterstrichen mit der Fehlermeldung "index2.js(x, x): 'xyz' was also declared here."

            const zimmer = rooms()[6]; // Welches Zimmer
            

            Diese "const" habe ich vielen Skripten verwendet die "rooms()" kommt aus aus dem "Global".
            Aber es betrifft auch const die nicht aus dem Global kommen die ich aber auch in einigen Skripten verwende.
            z.B.

            const script_path = 'javascript.' + 0 + '.Heizung.' + zimmer; // Vorgabe des Pfades des Scriptes
            

            Dort steht zusätzlich die Fehlermeldung "Cannot redeclare block-scoped variable 'script_path'." drin. Hier ist "script_path" rot unterstrichen.

            Wenn ich den Befehl export drunter schreibe verschwinden die Fehler!

            const zimmer = rooms()[6]; // Welches Zimmer
            const script_path = 'javascript.' + 0 + '.Heizung.' + zimmer; // Vorgabe des Pfades des Scriptes
            export{};
            

            Kann mir einer vielleicht sagen woran dies liegen kann??

            Vielen Dank schonmal

            OliverIOO Offline
            OliverIOO Offline
            OliverIO
            schrieb am zuletzt editiert von
            #5

            @pat sagte in Fehler bei konstanten Variablen:

            Ich habe bei all meinem Skripten ein Fehler bei den ich konstanten Variablen verwende.
            Und zwar ist "zimmer" rot unterstrichen mit der Fehlermeldung "index2.js(x, x): 'xyz' was also declared here."

            const zimmer = rooms()[6]; // Welches Zimmer
            

            Diese "const" habe ich vielen Skripten verwendet die "rooms()" kommt aus aus dem "Global".
            Aber es betrifft auch const die nicht aus dem Global kommen die ich aber auch in einigen Skripten verwende.
            z.B.

            const script_path = 'javascript.' + 0 + '.Heizung.' + zimmer; // Vorgabe des Pfades des Scriptes
            

            Dort steht zusätzlich die Fehlermeldung "Cannot redeclare block-scoped variable 'script_path'." drin. Hier ist "script_path" rot unterstrichen.

            Wenn ich den Befehl export drunter schreibe verschwinden die Fehler!

            const zimmer = rooms()[6]; // Welches Zimmer
            const script_path = 'javascript.' + 0 + '.Heizung.' + zimmer; // Vorgabe des Pfades des Scriptes
            export{};
            

            Kann mir einer vielleicht sagen woran dies liegen kann??

            Vielen Dank schonmal

            const darf innerhalb des gleichen scopes nicht erneut deklariert werden.
            wenn du const verwendest, dann sollte der Inhalt auch wirklich über die Laufzeit des Skripts KONSTANT, also unveränderlich sein.
            Falls es das nicht ist (was die Fehlermeldung vermuten lässt, da du immer neu zuweist) dann verwende "var" oder "let"

            Meine Adapter und Widgets
            TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
            Links im Profil

            1 Antwort Letzte Antwort
            0
            • P Pat

              Ich habe bei all meinem Skripten ein Fehler bei den ich konstanten Variablen verwende.
              Und zwar ist "zimmer" rot unterstrichen mit der Fehlermeldung "index2.js(x, x): 'xyz' was also declared here."

              const zimmer = rooms()[6]; // Welches Zimmer
              

              Diese "const" habe ich vielen Skripten verwendet die "rooms()" kommt aus aus dem "Global".
              Aber es betrifft auch const die nicht aus dem Global kommen die ich aber auch in einigen Skripten verwende.
              z.B.

              const script_path = 'javascript.' + 0 + '.Heizung.' + zimmer; // Vorgabe des Pfades des Scriptes
              

              Dort steht zusätzlich die Fehlermeldung "Cannot redeclare block-scoped variable 'script_path'." drin. Hier ist "script_path" rot unterstrichen.

              Wenn ich den Befehl export drunter schreibe verschwinden die Fehler!

              const zimmer = rooms()[6]; // Welches Zimmer
              const script_path = 'javascript.' + 0 + '.Heizung.' + zimmer; // Vorgabe des Pfades des Scriptes
              export{};
              

              Kann mir einer vielleicht sagen woran dies liegen kann??

              Vielen Dank schonmal

              AlCalzoneA Offline
              AlCalzoneA Offline
              AlCalzone
              Developer
              schrieb am zuletzt editiert von
              #6

              @pat sagte in Fehler bei konstanten Variablen:

              Diese "const" habe ich vielen Skripten verwendet die "rooms()" kommt aus aus dem "Global".

              Wenn du das gleiche const (also zimmer) nur in anderen nicht-globalen Skripten hast, ist das ok. Der Editor "weiß" nicht, dass diese Skripte voneinander getrennt sind. Für ihn sind mehrere Skripte "geladen", die alle den globalen Scope erweitern (Im Browser wäre das so, so funktioniert es ioBroker aber nicht).
              Das sollte aber nur ein "Problem" beim Bearbeiten sein - sofern das Skript startet, einfach ignorieren.

              Wenn ich den Befehl export drunter schreibe verschwinden die Fehler!

              Das liegt daran, dass das Skript dann vom Editor als "Modul" interpretiert wird und somit nicht mehr diesen imaginären globalen Scope erweitert.

              Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

              P 1 Antwort Letzte Antwort
              1
              • AlCalzoneA AlCalzone

                @pat sagte in Fehler bei konstanten Variablen:

                Diese "const" habe ich vielen Skripten verwendet die "rooms()" kommt aus aus dem "Global".

                Wenn du das gleiche const (also zimmer) nur in anderen nicht-globalen Skripten hast, ist das ok. Der Editor "weiß" nicht, dass diese Skripte voneinander getrennt sind. Für ihn sind mehrere Skripte "geladen", die alle den globalen Scope erweitern (Im Browser wäre das so, so funktioniert es ioBroker aber nicht).
                Das sollte aber nur ein "Problem" beim Bearbeiten sein - sofern das Skript startet, einfach ignorieren.

                Wenn ich den Befehl export drunter schreibe verschwinden die Fehler!

                Das liegt daran, dass das Skript dann vom Editor als "Modul" interpretiert wird und somit nicht mehr diesen imaginären globalen Scope erweitert.

                P Offline
                P Offline
                Pat
                schrieb am zuletzt editiert von
                #7

                @alcalzone

                Vielen lieben Dank dir!!

                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

                622

                Online

                32.5k

                Benutzer

                81.8k

                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