#javascript #html
#javascript #HTML
Вопрос:
Я хочу, чтобы событие onclick приводило к уменьшению числа игроков, а затем проверяло, выиграл игрок или нет (число игроков == 3 или нет). Я не хочу помещать оператор if в событие onclick. Итак, как я могу это вызвать?
Пример:
HTML:
<button onClick="myFunction()">button</button>
JS:
let playerScore = 0;
function myFunction() {
playerScore ;
}
if (playerScore == 3) {
console.log("win");
}
Комментарии:
1. Что ожидается и каков результат здесь?
2. Я думаю, вы ожидаете, что условие if будет выполняться при каждом нажатии кнопки?. интерпретатор вызывает условие if во время лексической фазы и при каждом нажатии кнопки вызывает функцию, а не условие if.
3. я хочу отобразить «win» в журнале conslone, если PlayerScore = 3, но не работает.
4. @sznajper Если вы не сделаете код частью своей функции, то он не будет выполняться при вызове функции. JavaScript не хранит список каждого if-оператора и проверяет их все при изменении любой переменной. Ваш if-оператор выполняется один раз в самом начале (сразу после того, как вы объявили свою переменную), и все.
5. @Ivar как я могу сделать так, чтобы оператор if всегда проверял переменную?
Ответ №1:
Вам нужно добавить это в функцию
let playerScore = 0;
function myFunction() {
playerScore ;
if(playerScore == 3) {
console.log("win");
}
}
Если вы хотите экспортировать оператор if, вы можете создать функцию и вызвать ее внутри первого
let playerScore = 0;
function myFunction() {
playerScore ;
winner(playerScore);
}
function winner(playerScore){
if(playerScore == 3) {
console.log("win");
}
}
Комментарии:
1. что мне следует делать, если я хочу переместить оператор if в другой js-файл?
2. Это зависит от того, что именно вы хотите сделать. Вы можете создать функцию и вызвать ее во втором файле js. Я добавил в ответ
Ответ №2:
if-statement
Должно быть в функции, а переменная написана с ошибкой:
let playerScore = 0;
function myFunction() {
playerScore ;
if (playerScore == 3) {
console.log("win");
}
}
<button onClick="myFunction()">button</button>
Комментарии:
1.что мне следует делать, если я хочу переместить оператор if в другой js-файл?
2. Вам нужно объяснить больше. Вы хотите сохранить это в функции и повторно использовать условие в другом месте?
Ответ №3:
У вас была опечатка в playerscore, и if должно было быть в функции.
let playerScore = 0;
function myFunction() {
playerScore ;
if (playerScore == 3) {
console.log("win");
}
}
<button onClick="myFunction()">button</button>
Комментарии:
1. что мне следует делать, если я хочу переместить оператор if в другой js-файл?