Как я могу использовать цикл для объявления динамической переменной в JavaScript?

1

У меня есть много переменных в JavaScript, возможно, 50 переменных, и я хочу объявлять переменные с помощью цикла, как я могу сделать это динамически.

var img1,img2,img3;
for(var i =1; i<50; i++){
  var img+i = document.getElementById(i);
  /* i wanna doing some thing like that */
}
  • 3
    это нормально, чтобы поместить их в объект или массив? obj["img" + i] = document.getElementById(i);
  • 2
    То, что вы ищете, называется «массив».
Теги:
dynamic
variables

3 ответа

0
Лучший ответ

Это создаст переменные img1... img49 для глобального объекта (в глобальном пространстве имен):

for(var i = 1; i < 50; i++){
  window['img'+i] = document.getElementById(i);
}
  • 0
    Спасибо, этот шаблон работает со мной.
1

Рассмотрим сохранение переменных в объекте:

var images = {}

for (var i = 1; i < 50; i++) {
  images['img' + i] = document.getElementById(i)
}

// usage
console.log(images.img5)

Или в массиве:

var images = []

for (var i = 1; i < 50; i++) {
  images.push(document.getElementById(i))
}

// usage   
console.log(images[4])
  • 0
    спасибо Данил, я стараюсь и работаю эффективно,
  • 0
    На самом деле я делаю это, но мне не хватает репутации.
Показать ещё 1 комментарий
0

вы можете создать массив javascript. е. g--

var array=[];
for(var i =1; i<50; i++){
    array[i] = document.getElementById(i);
}

после этого вы можете вызвать этот элемент массивом [i]

  • 0
    спасибо, я стараюсь и работаю эффективно,

Ещё вопросы

Сообщество Overcoder
Наверх
Меню