JavaScript возвращается из функции только один раз - PullRequest
0 голосов
/ 27 января 2019

Я хочу добавить два случайных числа и позволить пользователю ввести правильный ответ, но он застрял в одном ответе

function start(){     
  var fst = document.getElementById("fst").innerHTML = Math.floor(Math.random()*10);
  var snd = document.getElementById("snd").innerHTML = Math.floor(Math.random()*10);     
  return fst+snd;
} 
var x = start()
function validate(){
  var txt = document.getElementById("txt").value; 
  if(txt==x){   
    console.log('Correct Answer');    
  }  else  console.log('Wrong Answer'); 
  start();
}

1 Ответ

0 голосов
/ 27 января 2019

В вашей функции validate() вы сравниваете ввод пользователя с x, а затем генерируете новые случайные числа, вызывая start(). Однако значение x никогда не обновляется, поэтому x всегда равно двум первым сгенерированным случайным числам.

Вместо вызова start() в конце функции validate() присвойте x значение start() следующим образом: x = start().

Таким образом, будут генерироваться новые случайные числа, а значению x будет присваиваться сумма новых чисел.

...