Armin: Variablenwert als Variablenname

hallo,
ich habe schon allerlei abgegrast finde aber keine lösung dazu (vielleicht gibt es auch keine)

ich rufe eine funktion auf, wobei ich einige parameter mitgebe.
nun möchte ich das der wert der variablen id zu einem variablennamen wird.
beispiel wert von id = BOX1;

var BOX1; wie komme ich hierhin?

  1. Hello out there!

    ich habe schon allerlei abgegrast

    Ach du warst das. Hab mich schon gewundert, ob mein Nachbar sich einen neuen, leiseren Rasenmäher zugelegt hat.

    finde aber keine lösung dazu (vielleicht gibt es auch keine)

    Vielleicht aber doch.

    ich rufe eine funktion auf, wobei ich einige parameter mitgebe.
    nun möchte ich das der wert der variablen id zu einem variablennamen wird.

    Globale Variable?

    beispiel wert von id = BOX1;
    var BOX1; wie komme ich hierhin?

    window[id] (Globale Variablen sind Eigenschaften des 'window'-Objekts.)

    See ya up the road,
    Gunnar

    --
    „Und [dieses Forum] soll […] auch ein Fachforum bleiben und kein Psychologieforum werden.“ (Kirsten Evers)
    1. Leider verstehe ich das nicht ganz!
      wie sieht das dann konkret aus?

      ich rufe meine funktion auf createLayer(BOX1, Strasse);

      meine funktion:

      createLayer(id, layer) {
       (hier der wert von id als var) =  new OpenLayers.Layer.WMS(layer);
      }

      wo muss ich nun eine globale variable definieren? oder wo kann ich window[id] einsetzen?

      Hello out there!

      ich habe schon allerlei abgegrast

      Ach du warst das. Hab mich schon gewundert, ob mein Nachbar sich einen neuen, leiseren Rasenmäher zugelegt hat.

      finde aber keine lösung dazu (vielleicht gibt es auch keine)

      Vielleicht aber doch.

      ich rufe eine funktion auf, wobei ich einige parameter mitgebe.
      nun möchte ich das der wert der variablen id zu einem variablennamen wird.

      Globale Variable?

      beispiel wert von id = BOX1;
      var BOX1; wie komme ich hierhin?

      window[id] (Globale Variablen sind Eigenschaften des 'window'-Objekts.)

      See ya up the road,
      Gunnar

  2. beispiel wert von id = BOX1;
    var BOX1; wie komme ich hierhin?

    var Variablenname = 'foo';  
    window[Variablenname] = 42;  
    alert(foo);
    

    Variablen sind Eigenschaften des Objektes, zu dem sie gehören, und können deshalb über die Schreibweise Objektname[Eigenschaft] angesprochen werden. Bei selbstdefinierten Variablen bietet sich das windows-Objekt als oberstes Objekt in der Hierarchie an. Aber auch selbstdefinierte Objekte funktionieren:

    function myObj(prop, val) {  
      this[prop] = val;  
    }  
    var instance = new myObj('foo', 42);  
    alert(instance.foo);
    

    Für welche Variante Du Dich entscheidest, bleibt Dir überlassen.

    Siechfred

    --
    Wir vom Moderatorenteam haben keinerlei Humor, von dem wir wüssten.
    1. DANKE für die schnelle Hilfe an alle, habs kapiert und hat geklappt ;-)

      beispiel wert von id = BOX1;
      var BOX1; wie komme ich hierhin?

      var Variablenname = 'foo';

      window[Variablenname] = 42;
      alert(foo);

      
      >   
      > Variablen sind Eigenschaften des Objektes, zu dem sie gehören, und können deshalb über die Schreibweise Objektname[Eigenschaft] angesprochen werden. Bei selbstdefinierten Variablen bietet sich das windows-Objekt als oberstes Objekt in der Hierarchie an. Aber auch selbstdefinierte Objekte funktionieren:  
      >   
      > ~~~javascript
      
      function myObj(prop, val) {  
      
      >   this[prop] = val;  
      > }  
      > var instance = new myObj('foo', 42);  
      > alert(instance.foo);
      
      

      Für welche Variante Du Dich entscheidest, bleibt Dir überlassen.

      Siechfred