2015-02-18 1 views
-5

Выполняя курс codecademy, все работает, когда я запускаю код, за исключением этого оператора if/else. Когда это дойдет до этого, независимо от того, что я ввел для подсказки userAnswer, я просто получаю вывод «if». Может кто-нибудь объяснить, почему? Я читал эту вещь 100x, и ответ не выпрыгивал на меня. Благодаря тонну.«Еще» в моем случае if/else никогда не бывает - может кто-нибудь объяснить почему?

var userAnswer = prompt("Do you want to race Bieber on stage?"); 

if(userAnswer="yes") { 

    console.log("You and Bieber start racing. It's neck and neck! You win by a shoelace!") 

} else { 

    console.log("Oh no! Bieber shakes his head and sings 'I set a pace, so I can race without pacing.'") 

} 
+0

'=' предназначен для назначения значений переменным, а '==' - для сравнения значений. (и '===' для сравнения значения И типа) – JeroenJK

+0

Это могло бы быть полезно, если заявление о проблеме было хорошо написано. в его нынешнем виде никто никогда не столкнется с этим вопросом из Google, потому что он не содержит информации, которую люди будут использовать для Google (никто не собирается вносить в Google «другое в моем случае, если утверждение никогда не произойдет, может кто-нибудь объяснить, почему?»), они, возможно, искали: «проверка равенства всегда возвращает false в JavaScript» (хотя это имеет свои проблемы. –

ответ

3

В тесте if используйте === сделать сравнение. = делает назначение.

(Вы также можете использовать ==, но это частично сломана версия ===.)

5

Вы установки userAnswer вместо чтения ее состояния.

Изменения вашего условный к

userAnswer === "yes" 
0

Измените если заявление на

userAnswer === "yes" 
+0

Почему даже беспокоить ответ, когда уже голосовали ответы, говоря то же самое? – webnoob

+0

Я, очевидно, не заметил (старость Я полагаю) – james

0

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

var userAnswer = prompt("Do you want to race Bieber on stage?"); 
 

 
if(userAnswer==="yes") { 
 

 
console.log("You and Bieber start racing. It's neck and neck! You win by a shoelace!") 
 
} 
 

 
else { 
 

 
console.log("Oh no! Bieber shakes his head and sings 'I set a pace, so I can race without pacing.'") 
 
}

Смежные вопросы