Javascript: Array name as string; Need it to reference the actual array [duplicate]

StackOverflow https://stackoverflow.com/questions/16282045

  •  13-04-2022
  •  | 
  •  

Frage

I have to "get at" an array, but all I have is a string that matches the array name. Obviously this kind of thing won't work, but it shows what I'm trying to do:

var arrayname = new Array(1, 2, 3);
var array = 'arrayname';

Alert(array[0]);

Of course, the example above yeilds 'a' instead of 1, like I'd need.

The background is that I'm working with a Hyperion Business Intelligence dashboard, where which array used, is determined by a substring of the button's name that was used to call it.

War es hilfreich?

Lösung

It's very simple.

var storage = {};
storage.arrayname = [1, 2, 3];
alert(storage["arrayname"].join(','));

Polluting the global namespace is strongly discouraged. I would strongly advise you to refrain from using the window object for this purpose. Read HERE for more details.

Andere Tipps

Try using the window object to retrieve it if it is defined in the window context.

var array = window["arrayname"]

You can use

array = window['arrayname'];
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top