@Sergey750il

Don't make functions within a loop (как убрать ошибку)?

Код работает нормально, но Sublime подсвечивает ошибку "Don't make functions within a loop". Как правильно вынести функцию из цикла для исправления ошибки?

for (var p = 0, len = number.length; p < len; p++) {
        if (number[p] == 'Свободен') {
            number_js[p] = $('.ofice:eq(' + p + ')>.ofice_number>strong').map(function() {
                return $(this).html();
            })[0];

            for (var i = 0, len = rsrGroups.length; i < len; i++) {
                if (number_js[p] == rsrGroups[i].data("room")) {
                    rsrGroups[i].attr('fill', '#F4DA6C');
                }
            }
        }
    }
  • Вопрос задан
  • 1463 просмотра
Решения вопроса 1
alexey-m-ukolov
@alexey-m-ukolov Куратор тега JavaScript
function getSomeHtml() {
        return $(this).html();
}

for (var p = 0, len = number.length; p < len; p++) {
        if (number[p] == 'Свободен') {
            number_js[p] = $('.ofice:eq(' + p + ')>.ofice_number>strong').map(getSomeHtml)[0];

            for (var i = 0, len = rsrGroups.length; i < len; i++) {
                if (number_js[p] == rsrGroups[i].data("room")) {
                    rsrGroups[i].attr('fill', '#F4DA6C');
                }
            }
        }
    }


Только функция тут вообще не нужна:
number_js[p] = $('.ofice:eq(' + p + ')>.ofice_number>strong').first().html();
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы