Как использовать продолжить в цикле, чтобы изменить значение
Я пытаюсь получить цикл, который дает мне значения от 1 до 30. Однако каждое число, делимое на 10, я хочу жестко закодировать значение в соответствующее слово. Примером может быть значение 10 = "Десять", 20 = "Двадцать" и так далее.
Я попытался сделать это с помощью "продолжить", однако мои результаты не проходят "Десять".
for (i = 0; i <= 30; i++) {
if (i == 10) {
i = "Ten";
continue;
} if (i == 20) {
i = "Twenty";
continue;
}
console.log(i);
}
Правильно ли я говорю об этом? Не могли бы вы предложить несколько советов, чтобы я мог понять это. Спасибо,
Я попробовал это изначально. Но не сработало.
for (i = 0; i <= 30; i++) {
if (i == 10) {
i = "Ten";
} if (i == 20) {
i = "Twenty";
}
console.log(i);
}
3 ответа
Просто избавься от continue
заявления. Они заставляют цикл сразу пропустить до конца и начать другую итерацию. Таким образом, оператор вывода вашей консоли пропущен. Кроме того, вы не хотите трогать переменную цикла, и это не мешало бы иметь else
, Что-то вроде этого:
var result;
for (i = 0; i <= 30; i++) {
if (i == 10) {
result = "Ten";
} else if (i == 20) {
result = "Twenty";
} else {
result = i;
}
console.log(result);
}
Или вы можете просто записать желаемый результат непосредственно в каждой ветви if
/else
цепь:
for (i = 0; i <= 30; i++) {
if (i == 10) {
console.log("Ten");
} else if (i == 20) {
console.log("Twenty");
} else {
console.log(i);
}
}
Когда счетчик i
до десяти, вы заменяете его строкой, поэтому, когда поток управления достигает i++
часть, ваш цикл не работает. Что вы должны сделать, это присвоить значение для печати другой переменной, которая используется только внутри тела цикла.
Я не думаю, что вы можете изменить я и ожидаю, что он будет работать как обычно. следовательно, как только вы измените значение на "TEN", цикл завершится..!!!!