# Путаница ключа и элемента в цикле for в JavaScript

Пусть дан массив с названиями месяцев:

`let arr = [ 'янв', 'фев', 'март', 'апр', 'май', 'июнь', 'июль', 'авг', 'сен', 'окт', 'ноя', 'дек' ];`

Пусть в переменной `month` хранится номер текущего месяца:

`let month = 10;`

Давайте с помощью цикла выведем все месяцы, при этом текущий месяц выведем курсивом.

Некий программист уже решил эту задачу, однако, он ошибся и не обратил внимание на то, что в переменной `month` хранится номер месяца, а не его название:

`for (let i = 0; i < arr.length; i++) { if (month === arr[i]) { // ошибка тут document.write('<i>' + arr[i] + '</i>'); } else { document.write(arr[i]); } document.write('<br>'); }`

Наш программист сравнивает элемент массива с переменной `month`. Но ведь в этой переменной хранится номер месяца, а не его название!

Чтобы код работал правильно, нужно сравнивать `month` с номером месяца, то есть со значением счетчика `i`:

`for (let i = 0; i < arr.length; i++){ if (month === i) { // исправили ошибку document.write('<i>' + arr[i] + '</i>'); } else { document.write(arr[i]); } document.write('<br>'); }`
←→
↑