#javascript #if-statement #flowchart
Вопрос:
Я работаю над диаграммой потока сообщений в чате, где вы вводите ответы, и она даст вам ответ, работая с диаграммой. Однако я не могу заставить свой первый уровень соединиться со вторым уровнем. Я могу ввести «имя», и оно вернется правильно, но когда я наберу «да», чтобы ответить, тогда вам понравится вопрос о мороженом. Я получаю неопределенный ответ. Мы будем очень признательны за любую помощь.
let level = 0;
let path;
const getReply = (userInput) => {
if (level === 0) {
level = 1;
if (userInput === "name") {
path = "name";
return "Hello, name. Do you have like ice cream?";
}
}
if (level === 1) {
level = 2;
if (path === "yes") {
if (userInput === "yes") {
return "Great, what flavour do you like?";
}
}
Комментарии:
1. Вы назначаете
path = "name"
. Вы проверяетеif (path === "yes") {
примечание: игнорируйте, если это намеренное поведение, я просто подумал, что это немного странно.2. Я прокомментировал эту строку path = name, но когда я отвечаю «да» на вопрос «вам нравится мороженое», она просто возвращается неопределенной. Почему он не соединяется?
3. Потому
path === "yes"
что это всегда ложь
Ответ №1:
let level = 0;
const getReply = (userInput) => {
if (level === 0) {
level = 1;
return "Hello, name. Do you have like ice cream?";
}
if (level === 1) {
level = 2;
if (userInput === "yes") {
return "Great, what flavour do you like?";
}
}
}
console.log(getReply('Jack'));
console.log(getReply('yes'));
level = 0;
console.log(getReply('Jill'));
console.log(getReply('no'));