Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 28.12.2015, 11:10
Новичок на форуме
Отправить личное сообщение для Максим1977 Посмотреть профиль Найти все сообщения от Максим1977
 
Регистрация: 28.12.2015
Сообщений: 2

переменная var в цикле
Дана задача - упростить код без использования eval и массивов.

Вот код
var but1 = document.getElementById("but1");
	var but2 = document.getElementById("but2");
	var but3 = document.getElementById("but3");
	var but4 = document.getElementById("but4");
	var but5 = document.getElementById("but5");


этот код не работает
for (var i = 1; i<6; i++) {
var ['but'+i] = document.getElementById(['but'+i]);
}


такая штука работает

Последний раз редактировалось Максим1977, 28.12.2015 в 11:23.
Ответить с цитированием
  #2 (permalink)  
Старый 28.12.2015, 11:26
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,108

Максим1977,
window['but'+i] = document.getElementById(['but'+i]);
Ответить с цитированием
  #3 (permalink)  
Старый 28.12.2015, 11:32
Новичок на форуме
Отправить личное сообщение для Максим1977 Посмотреть профиль Найти все сообщения от Максим1977
 
Регистрация: 28.12.2015
Сообщений: 2

Спасибо! Заработало!
Ответить с цитированием
  #4 (permalink)  
Старый 30.12.2015, 00:42
Аспирант
Посмотреть профиль Найти все сообщения от callbackhell
 
Регистрация: 29.12.2015
Сообщений: 58

Сообщение от рони
window['but'+i] = document.getElementById(['but'+i]);
ты присваиваешь то, что и так по-дефолту присвоено.
<html>
<head>
</head>
<body>

<div id="foo1">foo1</div>
  
  
<script>
alert(window["foo" + 1])
</script>
  
</body>
</html>
Ответить с цитированием
  #5 (permalink)  
Старый 30.12.2015, 00:57
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,108

callbackhell,
если не мне, то спасибо, если мне, то привет виртуальному коню.
Ответить с цитированием
  #6 (permalink)  
Старый 30.12.2015, 02:55
Аватар для ruslan_mart
Профессор
Отправить личное сообщение для ruslan_mart Посмотреть профиль Найти все сообщения от ruslan_mart
 
Регистрация: 30.04.2012
Сообщений: 3,018

callbackhell / foo, такая фишка в старых браузерах не работает. Я точно помню, что в FF у меня были с этим проблемы.

Кстати, для чего квадратные скобки в getElementById? По моему, они тут явно лишние.
Ответить с цитированием
  #7 (permalink)  
Старый 30.12.2015, 02:57
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

Ruslan_xDD,
Да, была такая феня, хорошо работала лишь в старых ие

callbackhell,
2. Задача-то была задать новые ID, их не было изначально...

Последний раз редактировалось Deff, 30.12.2015 в 03:09.
Ответить с цитированием
  #8 (permalink)  
Старый 30.12.2015, 03:04
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,108

Сообщение от Ruslan_xDD
Кстати, для чего квадратные скобки в getElementById?
не убрал когда копировал
Ответить с цитированием
  #9 (permalink)  
Старый 30.12.2015, 03:10
Аспирант
Посмотреть профиль Найти все сообщения от callbackhell
 
Регистрация: 29.12.2015
Сообщений: 58

Сообщение от Ruslan_xDD
такая фишка в старых браузерах не работает
похрену на это старье, эта фича есть в стандарте, а твой старый FF пользуют полтора человека в мире
Ответить с цитированием
  #10 (permalink)  
Старый 30.12.2015, 03:12
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

callbackhell,
Сообщение от Deff
2. Задача-то была задать новые ID, их не было изначально...
Ваше утверждение, не спасает от нужды в перечислении!
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как сделать кнопку включить/выключить со звуком Scheme Общие вопросы Javascript 32 05.02.2017 15:54
canvas: пререрисовака экрана Seva Pletnev Элементы интерфейса 26 05.07.2013 17:35
Помогите модифицировать код JS refer5 Общие вопросы Javascript 2 22.01.2013 21:42
Кто с нодой может помочь? И какой редактор посоветуете? Антон Крамолов AJAX и COMET 14 22.11.2012 20:34
Как отловить баги в двух идентичных скриптах ddale jQuery 12 02.08.2012 19:42