Я читал in this Q&A, что, как правило, следует избегать утверждений в циклах continue
. Правило стоит придерживаться кода ниже? Если да, то каков был бы лучший способ реорганизовать его, чтобы избавиться от них?Должен ли я избавиться от операторов продолжения
for (property in formInput) {
if (!formInput.hasOwnProperty(property) || property === "Id") {
continue;
}
if (property.slice(-3) === "_Id") {
setMagicSuggestFromFormInput(property);
continue;
}
if (property.slice(-3) === "_bl" && formInput[property] === true) {
$("#" + property).prop("checked", true);
continue;
}
$("#" + property).val(formInput[property]);
}
Edit: Если вы думаете, что цикл должен быть переработан, к тому же с указанием о том, как это можно сделать, не могли бы вы сказать мне, почему вы считаете предложил рефакторинга лучший выбор дизайна?
Личный выбор ... откровенно говоря, я бы предпочел, чтобы выражения 'continue' содержали глубоко вложенный код. –
Возможный дубликат [Почему в JavaScript есть недопустимые утверждения?] (Http://stackoverflow.com/questions/11728757/why-are-continue-statements-bad-in-javascript) – kamilk
Этот вопрос, по сути, исходя из. Просьба о передовой практике или неявных правилах будет порождать очень упрямые ответы, лишенные технической объективности. Этот вопрос, вероятно, будет закрыт. Для получения дополнительной информации см. [Помощь/по теме]. Также обратите внимание, что попытка получить «лучший выбор дизайна» является чрезвычайно широкой и основанной на мнениях. –