#jquery #javascript
Есть простой цикл var menu = document.getElementById('menu'); var links = menu.getElementsByTagName('a'); function clickLink () { alert('Click'); return false; } for (var i=0; i < links.length; i++) { if(i=2){ links[2].onclick = clickLink; } //break; } Если дописать break, то скрипт работает, но если его нет, то цикл становиться бесконечным. Почему это происходит.
Ответы
Ответ 1
if(i == 2), иначе у вас идет присвоение значения переменной и цикл продолжается с 2.Ответ 2
Специально для защиты от таких ошибок придуманы Yoda conditions: if (2 == i) Если вы ошибетесь и напишете if (2 = i), то будет явная ошибка, а не скрытая.
Комментариев нет:
Отправить комментарий