John_Norton
@John_Norton
Game developer

Почему число выводится вместе с undefined?

Почему у меня выводит переменную numberOne в таком виде "undefined1" - 1 это число которое я ввёл с кнопок
63bc7a094207b510212924.png

Вот пример моего кода (урезанный, так как много очень строк и будет очень сложно разобрать)
<!DOCTYPE html>
<html lang="ru">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Калькулятор</title>

  <link href="style/main.css">
</head>
  <div class="calculator">
    <div id="windowNumber">0</div>
    <button onclick="enterNumber(1)" class="button1">1</button>
    <button onclick="addNumber()" class="buttonAdd">+</button> </br> 
  </div>
  
  <script>
     var numberEnter = document.getElementById('windowNumber');
numberEnter = "";
var numberOne, numberTwo = "";
var operation = "";
var result = 0;

function enterNumber(number){
  if (numberEnter == "0")
  {
    numberEnter = "";
  }
  numberEnter = numberEnter + number;
  document.getElementById('windowNumber').innerHTML = numberEnter;
}

function addNumber(){
  numberOne = numberOne + numberEnter;
  operation = "+";
  numberEnter = "0";
  alert(numberOne);
}
 </script>
</body>
</html>
  • Вопрос задан
  • 68 просмотров
Решения вопроса 1
@joseffie
Front-end developer
У вас переменная numberOne не инициализирована, из-за чего имеет значение undefined.

В функции addNumber вы к undefined прибавляете строку numberEnter, из-за чего в результате конкатенации получается строка undefined${numberEnter}.

Инициализируйте переменную numberOne, например, присвоив ей значение "", и тогда undefined в Вашем выводе исчезнет.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
А что должно выводиться, если переменная numberOne не инициализирована?
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы