Обучение javascript в пятый раз, базовый c фон и кодирование иностранца (не является носителем английского языка sh, поэтому не смог найти правильный ответ).
У меня есть базовый c функция, которую я хочу вернуть значение, набранное пользователем:
var number = ' ';
function askNumber(){
number = parseInt(prompt('Type a number :'));
if (isNaN(number)){
askNumber();
}else{
return number;
}
}
console.log(askNumber());
Когда вы впервые наберете символы, она снова вызовет функцию. Если во второй раз вы наберете несколько цифр, функция вернет «неопределенное».
-
Теперь, если я добавлю if / else для вызова функции, когда число больше, чем 999 и ниже 0, тогда, если я наберу большее число, а затем верное число, будет возвращено большее число.
Кажется, что оператор return не возвращает правильное значение после повторного вызова функции. .. рекурсивно?
Как убедиться, что
возвращаемое число;
возвращает последнее значение, введенное пользователем?