Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Хочу разобраться, почему так? (https://javascript.ru/forum/misc/59877-khochu-razobratsya-pochemu-tak.html)

vovk_a 01.12.2015 15:55

Хочу разобраться, почему так?
 
<script>
var arr = new Array(1,1,1,1,1,1,1,1,1,1);
var i = 0;
var m = 0;
var n = 0;
while (i < arr.length){

n = i + arr[i];
i = n;
console.log(i);
i++;
}
</script>
Я только начал изучать javascript, и еще до конца не понимаю некоторые вещи.
Подскажите почему выводит только не четные номера элементов? Спасибо!!:help:

Rise 01.12.2015 16:16

vovk_a,
// 1 итерация   (i = 0, n = 0)
n = i + arr[i]; // n = 0 + 1 = 1
i = n;          // i = 1
console.log(i); // вывод 1
i++;            // i = i + 1 = 1 + 1 = 2

// 2 итерация   (i = 2, n = 1)
n = i + arr[i]; // n = 2 + 1 = 3
i = n;          // i = 3
console.log(i); // вывод 3
i++;            // i = i + 1 = 3 + 1 = 4

// 3 итерация   (i = 4, n = 3)
n = i + arr[i]; // n = 4 + 1 = 5
i = n;          // i = 5
console.log(i); // вывод 5
i++;            // i = i + 1 = 5 + 1 = 6

// и т.д.

vovk_a 01.12.2015 17:21

Спасибо!! Все очень понятно.


Часовой пояс GMT +3, время: 16:50.