André Laugks: Adressierung eines Arrays mit Variablenname

Beitrag lesen

Hallo!

Daneben ist eval langsam, absturzanfällig und erschwert das debuggen.

Kann ich nicht bestätigen! Ich habe das im Einsatz. Ich baue Array-Namen, also die Variable zusammen.

Wird eine Variabel gesucht:

var ich_bins = "struppi";

var x = 'ich';

alert(window[x + '_bins']);

der OP möchte vermutlich den Namen eines select feldes zusammen bauen, dort geht's noch einfacher:

document.forms[formName].elements[SelectName + '_entries'].length;

Ich habe das so verstanden. Es gibt mehrere Arrays, und es soll je nach Auswahl das Array auf die länge getestet werden.

var erstes_array = new Array(1,2,3);
var zweites_array = new Array(1,2,3,4,5,6,7,8);

welches_array = "erstes_array"; // vom Formular

alert(eval(welches_array+."length"));

Deine Methode kommt natürlich ohne eval aus. Mir war damals window[], also so über die Variable zuzugreifen, nicht bekannt bzw. hatte das als Lösung nicht gefunden.

MfG, André Laugks

--
L-Andre @ gmx.de