Можно ли использовать инкрементное значение в имени переменной при ее объявлении в цикле? - PullRequest
0 голосов
/ 03 июня 2010

Я создаю функцию, которая будет каждый раз читать разные XML-файлы, которые будут содержать разное количество одинаковых узлов.

Я уже создал цикл, который хранит идентификатор каждого узла в массиве, и теперь я хочу создать переменные для каждого члена массива, которые хранят атрибуты узла с каждым идентификатором.

Поскольку число узлов будет разным для каждого XML-документа, который читает моя функция, я не могу вручную назначать переменные для атрибутов каждого идентификатора узла, не зная, сколько их назначить, поэтому я создал цикл, который выполняется специально для этого числа элементов, которые я сохранил в массиве. Внутри этого цикла я надеялся получить что-то вроде:

for (i=0; i<array.length; i++)
{
    var ID + i + width = exampleheight
    var ID + i + height = exampleheight
}

Я знаю, что это не работает, но пытался обрисовать в общих чертах то, что я ищу, чтобы выяснить. Можно ли использовать некоторую переменную или случайное число при объявлении переменной?

1 Ответ

5 голосов
/ 03 июня 2010

Да, но не надо. Это некрасиво и подвержено ошибкам. Языки программирования обычно имеют полезные структуры данных, воспользуйтесь ими.

Использовать массивы и объекты.

var foo = [];
for (i=0; i<array.length; i++)
{
    foo[i] = {
        width: example_width,
        height: example_height
    };
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...