Проблема логики в коде - PullRequest
       24

Проблема логики в коде

1 голос
/ 20 марта 2019

После просмотра этой проблемы с моей группой у нас все еще возникают проблемы с выяснением, почему она не выведет набранное число в "textInput".

var gpa = "minimumGPA";
textInput("minimumGPA", "Enter Minimum GPA");
setPosition("minimumGPA", 55, 145, 200, 30);
setText("minimumGPA", "");
onEvent("startButton", "click", function() {
  gpa = getNumber("minimumGPA");
});
console.log(gpa);

В этом псевдокоде«startButton» - это работающий идентификатор, а «getNumber» должен получить номер из текстового поля из «textInput».

Любой, кто имеет опыт работы с code.org, что не так с логикоймой код?

Ответы [ 2 ]

1 голос
/ 20 марта 2019

"startButton" должен быть определен как кнопка, которую вы будете нажимать.

button("startButton","Start");

Кроме того, то, что вы, похоже, ищете, - это значение в текстовом поле «минимальныйGPA», когда вы нажимаете кнопку. Следовательно, console.log (gpa) должен находиться в обработчике кликов, например

onEvent("startButton", "click", function() {
  gpa = getNumber("minimumGPA");
  console.log(gpa);
});

Вот полный пример (с небольшим изменением, чтобы убрать текст, когда вы нажимаете на него)

var gpa = "minimumGPA";
button("startButton","Start");
textInput("minimumGPA", "Enter Minimum GPA");
setPosition("minimumGPA", 55, 145, 200, 30);
onEvent("minimumGPA","click",function() {
  setText("minimumGPA","")
})
onEvent("startButton", "click", function() {
  gpa = getNumber("minimumGPA");
  console.log(gpa);
});
0 голосов
/ 20 марта 2019

Оператор console.log отсутствует в функции обработчика щелчков;он выполняется немедленно, а не при нажатии startButton.Попробуйте поместить журнал в пределах { } функции обработчика щелчков после того, как вы установите gpa.

...