Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Prompt. Как сделать проверку, чтобы строки и нечисловые значения не записывались в ма (https://javascript.ru/forum/misc/74120-prompt-kak-sdelat-proverku-chtoby-stroki-i-nechislovye-znacheniya-ne-zapisyvalis-v-ma.html)

monsara 14.06.2018 21:33

Prompt. Как сделать проверку, чтобы строки и нечисловые значения не записывались в ма
 
Здравствуйте, подскажите, пожалуйста с решением следующей задачи.

Необходимо внести в код дополнительную проверку, чтобы пустые строки ('') и нечисловые значения (NaN) не записывались в массив через prompt.

Интересует проверка в текущем контексте, без использования функций.

Буду благодарен за помощь и совет в решении. Код ниже, а также в ссылке на codepen.https://codepen.io/monsara/pen/ERXMpq?editors=0012
'use strict';

let userInput;
const numbers = [];
let total = 0;

do {
  userInput = prompt('Введите число', '');

  if (userInput === '' || isNaN(userInput)) {
    alert('Было введено не число, попробуйте еще раз');
}

  numbers.push(Number(userInput));



} while (userInput !== null);


for (const value of numbers) {
  total = total + value;
}

alert(`Общая сумма чисел равна ${total}`);
console.log(numbers);

рони 14.06.2018 22:05

monsara,
'use strict';

let userInput;
const numbers = [];
let total = 0;

do {
  userInput = prompt(`Введите ${numbers.length + 1}-e число`, '');

  if (userInput == +userInput && userInput.trim() ) { numbers.push(+userInput) }
  else  if(userInput !== null) alert('Было введено не число, попробуйте еще раз');



} while (userInput !== null);


for (const value of numbers) {
  total = total + value;
}

alert(`Общая сумма ${numbers.length} чисел равна ${total}`);
console.log(numbers);

monsara 14.06.2018 23:41

Спасибо!! Четко. То что нужно!:)


Часовой пояс GMT +3, время: 13:02.