Не срабатывает сравнение
Почему не выводится алерт(гуд)?
<script> var data = new Array(); data.push('i-radio-1'); data.push('i-radio-2'); for(var i = 0; i < data.length; ++i) { //alert(typeof('i-radio-' + i)); //alert(typeof(data[i])); if(data[i] === 'i-radio-' + i) alert('Good'); } </script> |
потому, что:
i = 0; i = 1; |
freeze,
var data = new Array(); data.push('i-radio-0'); data.push('i-radio-1'); data.push('i-radio-2'); for(var i = 0; i < data.length; ++i) { //alert(typeof('i-radio-' + i)); //alert(typeof(data[i])); if(data[i] === 'i-radio-' + i) alert('Good'); } |
начну с того что i++ а не ++i
|
Просто у цикла for сначала проверяется условие, потом исполняется тело, а затем третье выражение:
for(; alert("Выполнится."); alert("Не выполнится")) alert("Не выполнится"); for( var x = 1; x; alert( "затем это." ) ){ alert( "Сначала выполняется тело,.." ); x--; }; |
тем не менее нужно i++
|
Maxmaxmахimus, не нужно. Просто так принято. Там можно писать любое выражение: хоть i++, хоть ++i , хоть i += 1, хоть i = i + 1, хоть i = ++i, но не i = i++:)
|
Не, нужно писать i++ ) потому что проверка будет срабатывать не верно, итераций будет на одну меньше чем должно быть. )
|
Часовой пояс GMT +3, время: 13:48. |