По фану пишу подобие игры прямо в браузере (в консоль страницы вставляю код и смотрю результат), и вот строчка:
var day = prompt('У вас сегодня был хороший день?');
if (day = Да) then
alert('Рад за тебя.');
После написания ответа вылетает. Что-то явно не так во второй строчке, но я не могу понять, что именно. Помогите!
JavaScript
Помогите с кодом Javascript
Переменная Да не определена, поэтому попытка присваивания ее значения переменной day вызывает ошибку выполнения.
Макс Усков
Объясни, пожалуйста!
Макс Усков
Я имею ввиду как нужно написать, чтобы все работало.
Макс Усков
Спасибо вам обоим.
1. Почему при написании prompt у тебя текст заключен в кавычки, а в условии if (day = Да) нет? Кавычек не хватило?
2. А так же почему у тебя перепутаны операции присваивания и сравнения?
3. Что это еще за then?
Интерпретатор JavaScript справедливо ругается.
ОШИБКА 1: не имею понятия о некой переменной с именем "Да".
РЕШЕНИЕ: чтобы не вводить себя и меня в заблуждение, сделай следующее:
Либо объяви переменную с именем "Да" или заключи Да в кавычки, чтобы это стало строкой.
ОШИБКА 2: я вроде думал, что ты хочешь провести операцию сравнения в условии if (day = Да), а то, что ты пишешь является операцией присваивания.
РЕШЕНИЕ: в условиях допускается операция сравнения, в свою очередь это ДВА знака равно, ну или ТРИ (подробнее можешь почитать на learn.javascript.ru).
ОШИБКА 3: я понятия не имею ничего о каком-то там "then", ты прямиком с паскаля слез?
РЕШЕНИЕ: переходи обратно на паскаль, либо запомни, что в JavaScript блок кода заключается в скобки { и }. Соответственно правильным способом написания условий будет:
if (day == "Да") return true - для действий, которые могут войти в одну строку.
if (day == "Да") {
// Много-много строк кода.
}
2. А так же почему у тебя перепутаны операции присваивания и сравнения?
3. Что это еще за then?
Интерпретатор JavaScript справедливо ругается.
ОШИБКА 1: не имею понятия о некой переменной с именем "Да".
РЕШЕНИЕ: чтобы не вводить себя и меня в заблуждение, сделай следующее:
Либо объяви переменную с именем "Да" или заключи Да в кавычки, чтобы это стало строкой.
ОШИБКА 2: я вроде думал, что ты хочешь провести операцию сравнения в условии if (day = Да), а то, что ты пишешь является операцией присваивания.
РЕШЕНИЕ: в условиях допускается операция сравнения, в свою очередь это ДВА знака равно, ну или ТРИ (подробнее можешь почитать на learn.javascript.ru).
ОШИБКА 3: я понятия не имею ничего о каком-то там "then", ты прямиком с паскаля слез?
РЕШЕНИЕ: переходи обратно на паскаль, либо запомни, что в JavaScript блок кода заключается в скобки { и }. Соответственно правильным способом написания условий будет:
if (day == "Да") return true - для действий, которые могут войти в одну строку.
if (day == "Да") {
// Много-много строк кода.
}
Эх... ну ладно. javascript в данном случае воспринимает да как переменную. Чтобы такого не происходило нужно написать "да". Данные в кавычках считаются за строки. Кстати, на всякий случай прочитай про конкатенацию. 1+1 = 2 НО "1"+1 = 11. Также не вижу смысла в then.
Правильный код:
let day = prompt('У вас сегодня был хороший день?')
if (day == "Да"){
alert('Рад за тебя.')
}
Кстати: = - это знак присваивания. Знаки сравнения это == и ===.
Правильный код:
let day = prompt('У вас сегодня был хороший день?')
if (day == "Да"){
alert('Рад за тебя.')
}
Кстати: = - это знак присваивания. Знаки сравнения это == и ===.
Александр Байда
= и then — работали бы в паскале))
Похожие вопросы
- Помогите с кодом JavaScript
- Помогите подправить код рисовалки на JavaScript
- Помогите разобраться с кодом (JavaScript)
- Пожалуйста, помогите с простым кодом JavaScript
- Помогите написать код на JS
- Помогите с кодом js
- Ребят помогите с кодом пожалуйста (JS, Googl Apps Sсript)
- Помогите с кодом JS. Как в данном случае вывести сообщение о равных числах?
- Помогите отзеркалить код для слайдерра (мне сказали просто отзеркалить)! в main.js
- Помогите решить два кода на javascript, чтобы потом понимать как решать похожие