Подскажите почему не срабатывает цикл for
Здравствуйте только изучаю js подскажите почему не срабатывает цикл for внутри, тестирую с while все работает нормально
let personalMovieb = {
movies: {}
}
for (let i = 0; i < 2; i++) {
let questOne = prompt('Один из просмотренных фильмо', '');
if (questOne == '') {
alert('Поле пустое');
i--;
}
if (questOne != '') {
for (let count = 0; count < 1; count++) {
let questTwo = prompt('На сколько оцените его', '');
if (questTwo == '') {
alert('Поле пустое');
count = 0;
} else {
alert('Поле не пустое');
personalMovieb.movies[questOne] = questTwo;
}
}
}
}
console.log(personalMovieb.movies);
Это если заменить на while тогда норм все
for (let count = 0; count < 1; count++) {
let questTwo = prompt('На сколько оцените его', '');
if (questTwo == '') {
alert('Поле пустое');
count = 0;
} else {
alert('Поле не пустое');
personalMovieb.movies[questOne] = questTwo;
}
}
let count = 0;
while (count < 1) {
let questTwo = prompt('На сколько оцените его', '');
if (questTwo == '') {
alert('Поле пустое');
count = 0;
} else {
personalMovieb.movies[questOne] = questTwo;
count++;
}
}
|
alacka, не совсем понятно зачем тебе вообще циклы for ( ; ; )...
Просто для тренировки? |
Цитата:
- Крутнулся с нулем - Увеличил счетчик - Проверил условие 1<1 - оно ложное - Все. Цикл закончил работу! |
Вариант с циклами for ( ; ; ) тут не совсем уместен... Он больше для перечисления...
Но, как вариант
for (let count = 0; count < 1; count++) {
let questTwo = prompt('На сколько оцените его', '');
if (!questTwo) {
alert('Поле пустое');
count = -1;
} else {
alert('Поле не пустое');
}
}
|
Или так...
for (let count = 0; count < 1;) {
let questTwo = prompt('На сколько оцените его', '');
if (!questTwo) {
alert('Поле пустое');
} else {
alert('Поле не пустое');
count++
}
}
|
Да это больше для тестов
сделал ещё вот так
for (let i = 0; i < 2; i++) {
let questOne = prompt('Один из просмотренных фильмо', '');
while (questOne == '') {
alert('Поле пустое');
questOne = prompt('Один из просмотренных фильмо', '');
}
let questTwo = prompt('На сколько оцените его', '');
while (questTwo == '') {
alert('Поле пустое');
questTwo = prompt('На сколько оцените его', '');
}
personalMovieb.movies[questOne] = questTwo;
}
все на while немного подругому, оказывается се попроще, а я все усложнял :cray: спасибо, за примеры |
alacka,
:-?
let questOne;
while (!questOne) {
questOne = prompt('Один из просмотренных фильмо', '');
questOne || alert('Поле пустое');
}
let questTwo;
while (!questTwo) {
questTwo = prompt('На сколько оцените его', '');
questTwo || alert('Поле пустое');
}
alert(JSON.stringify({[questOne] : questTwo}));
|
красиво, но пока не понятно полностью, нужно учить
спасибо questOne || alert('Поле пустое'); это работает как if ? верно ? подскажите как поиска в справочниках - || |
alacka,
questOne || alert('Поле пустое');
тоже что
if(!questOne ) alert('Поле пустое');
|
alacka,
https://learn.javascript.ru/logical-operators Цитата:
|
| Часовой пояс GMT +3, время: 18:13. |