resetButton не работает, как исправить?

Весь код:

let NUMBER = Math.round(Math.random() * 10); // случайное число, которое нужно отгадать
console.log(NUMBER);
let textarea = document.querySelector('.textarea'); // поле ответа пользователя
let btn_Submit = document.querySelector('.btn-Submit'); // кнопка отправить
let guesses = document.querySelector('.guesses'); // строка, отображающая введенный ответ 
let last_result = document.querySelector('.last_result'); // результат попытки : победа/ проигрыш/ истраченная попытка
let more_or_less = document.querySelector('.more_or_less'); // ответ пользователя больше или меньше случайного число, которое нужно отгадать 
let attempts = 0; // количество истраченных попыток
const container = document.querySelector('.container');
let resetButton;






// получаем введенный ответ пользователя
btn_Submit.addEventListener('click', take_answer);
textarea.addEventListener('keydown', function(e) {
  if (e.keyCode === 13) {
    take_answer()
  }
})

function take_answer() {
  guesses.textContent = '';
  last_result.textContent = '';
  textarea.focus();
  answer = Number(textarea.value);
  console.log(answer);
  if (answer == NUMBER) {
    func_win();
  } else if (attempts == 5) {
    guesses.textContent = 'попытки кончились, вы проиграли!'
    setGameOver();
  } else if (answer > 10 || answer < 0) {
    guesses.textContent = `${answer}:  не соблюдает условия!`
    attempts += 1;
    textarea.value = '';
  } else if (attempts != 5) {
    guesses.textContent = `число не угадано`;
    attempts += 1;
    textarea.value = '';
    func_wrong();
  }
}

function func_win() {
  section = document.querySelector('.nothing');
  container.className = 'nothing';
  section.className = "hacked";
  setGameOver();
}

function func_wrong() {
  if (answer > NUMBER) {
    last_result.textContent = `ваше число ${answer} больше загаданного`
  } else {
    last_result.textContent = `ваше число ${answer} меньше загаданного`
  }
}
// function create_btn_Reset(name) {
//     var parent = document.getElementsByClassName('.btn');
//     var btn = document.createElement('div');
//     btn.className = 'btn';
//     btn.style.width = '100px';
//     btn.style.height = '300px';
//     btn.style.background = '#c5c5c5';
//     btn.style.color = '#000';
//     var text = 'начать игру заново';
//     var textNode = document.createTextNode(text);
//     btn.appendChild(textNode);
//     parent.appendChild(btn);
//     articleDiv.appendChild(btn);
//     parent.addEventListener('click', resetGame);
// }
function setGameOver() {
  textarea.disabled = true;
  btn_Submit.disabled = true;
  resetButton = document.createElement('button');
  resetButton.textContent = 'Start new game';
  document.body.appendChild(resetButton);
  resetButton.addEventListener('click', resetGame);
}

function resetGame() {
  attempts = 0;
  parent.parentNode.removeChild(parent);
  var resetParas =
    document.querySelectorAll('.results p');
  for (var i = 0; i < resetParas.length; i++) {
    resetParas[i].textContent = '';
  }

  resetButton.parentNode.removeChild(resetButton);

  textarea.disabled = false;
  btn_Submit.disabled = false;
  textarea.value = '';
  textarea.focus();



  NUMBER = Math.round(Math.random() * 10);
}
html {
  font-family: Lato;
}

body {
  display: flex;
  width: 100vw;
  height: 100vh;
  margin: 0 auto;
  justify-content: center;
  align-items: center;
  background: rgb(204, 147, 147);
}

.lastResult {
  color: white;
  padding: 3px;
}

.container {
  z-index: 3;
  min-height: 20vh;
  min-width: 20vw;
  /* max-width: 90vw; */
  padding: 20px 50px;
  background: rgb(215, 159, 159);
  display: flex;
  justify-content: center;
  align-items: start;
  flex-direction: column;
}

h1 {
  margin-bottom: 20px;
  width: 100%;
  text-align: justify;
  white-space: pre;
}

.form {
  display: grid;
  grid-template-areas: "a a a""b b c""b b c";
}

p {
  grid-area: a;
  margin-bottom: 5px;
}

.textarea {
  grid-area: b;
  height: 22px;
}

.btn-Submit {
  cursor: pointer;
  grid-area: c;
  /* justify-self:end; */
  /* text-align: justify; */
  font-size: 13px;
  font-family: sans-serif;
  font-weight: 400;
  background: rgba(237, 197, 197, 0.496);
  margin-left: 5px;
  /* height: 20px; */
  padding: 4px;
}

.nothing {
  opacity: 0;
  z-index: 0;
  position: absolute;
}

.hacked {
  z-index: 4;
  display: flex;
  flex-direction: column;
  height: auto;
  width: 60vw;
  Justify-items: center;
  align-items: center;
  background: pink;
  color: rgb(255, 42, 42);
  font-size: 30px;
  font-weight: 600;
  border: 4px rgb(243, 114, 114) solid;
  /* color: rgb(255, 42, 42); */
}

.win_p {
  margin-top: 30px;
}

.img {
  margin: 0;
}

.hacked::after {
  content: "♥";
}
<div class="container">
  <h1>Отгадайте число от 0 до 10</h1>
  <div class="form">
    <p>Ваше число: </p>
    <input type="text" class="textarea">
    <input type="button" value="Отправить" href="#" class="btn-Submit">
    <div id="str"></div>
  </div>

  <div class="results">
    <p class="guesses"></p>
    <p class="last_result"></p>
    <p class="more _or_less"></p>
  </div>

</div>
<div class="btn"></div>
<section class="nothing win">
  <div class="win_p"> Вы победили!</div>
  <img class="img" src="png.png">
</section>

function setGameOver() {
    textarea.disabled = true;
    btn_Submit.disabled = true;
    resetButton = document.createElement('button');
    resetButton.textContent = 'Start new game';
    document.body.appendChild(resetButton);
    resetButton.addEventListener('click', resetGame);
  }

function resetGame() {
    attempts = 0;
    parent.parentNode.removeChild(parent);
    var resetParas =
        document.querySelectorAll('.results p');
    for (var i = 0; i < resetParas.length; i++) {
        resetParas[i].textContent = '';
    }

     resetButton.parentNode.removeChild(resetButton);

    textarea.disabled = false;
    btn_Submit.disabled = false;
    textarea.value = '';
    textarea.focus();



    NUMBER = Math.round(Math.random() * 10);
}

Ответы (1 шт):

Автор решения: Проста Miha

Просто так

const inputNumber = document.getElementById('input-number');
const inputNumberBtn = document.getElementById('input-number-btn');
const container = document.querySelector('.container');

// Генерируем рандомное число от 0 до 10
let randomNumber = Math.floor(Math.random() * 10);
let attemp = 0;

inputNumberBtn.addEventListener('click', () => {
  let numberValue = inputNumber.value;
  inputNumber.value = null;

  if (numberValue > 10 || numberValue < 0) {
    attemp += 1;
    if (attemp >= 3) {
      showModalMessage('Попытки кончились, вы проиграли!');
      return;
    }
    showMessage(numberValue + ' - Вы не соблюдаете правила!', 'alert');
    return;
  }

  if (numberValue == randomNumber) {
    showModalMessage('Вы выйграли!', 'win');
    return;
  }

  if (numberValue > randomNumber) {
    showMessage('Вы не угадали! Ваше число ' + numberValue + ' больше загаданного', 'up');
  } else {
    showMessage('Вы не угадали! Ваше число ' + numberValue + ' меньше загаданного', 'down');
  }
})

function deleteLastMessage() {
  let message = document.querySelector('.message');
  if (message != null) {
    message.remove();
  }
}

// Создаём сообщения
function showMessage(text, className) {
  deleteLastMessage();

  message = document.createElement('div');
  message.classList.add('message', className);
  message.textContent = text;
  container.append(message);
}

// Создаём модальное окно
function showModalMessage(text) {
  let modal = document.createElement('div');
  modal.className = 'modal';
  modal.textContent = text;

  let restartBtn = document.createElement('button');
  restartBtn.className = 'btn btn-restart';
  restartBtn.textContent = 'Начать новую игру';

  restartBtn.addEventListener('click', (e) => {
    deleteLastMessage();
    attemp = 0;
    randomNumber = Math.floor(Math.random() * 10);
    e.target.parentElement.remove();
  })

  modal.append(restartBtn);
  container.append(modal);
}
* {
  font-family: consolas;
}

body {
  width: 100%;
  min-height: 100vh;
  margin: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgb(204, 147, 147);
}


/* Убираем стрелочки у инпута */

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

input[type=number] {
  -moz-appearance: textfield;
}

.container {
  padding: 32px;
  box-shadow: 0 0 12px 2px rgba(0, 0, 0, .5);
}

.input-number {
  display: flex;
  justify-content: space-between;
}

.btn {
  padding: 6px 24px;
}

.modal {
  position: absolute;
  width: min(480px, 100%);
  background: rgb(204, 147, 147);
  box-shadow: 0 0 12px 2px rgba(0, 0, 0, .5);
  padding: 32px;
  display: flex;
  align-items: center;
  flex-direction: column;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.btn-restart {
  margin-top: 32px;
}
<div class="container">
  <h1>Отгадайте число от 0 до 10</h1>
  <p>Ваше число:</p>

  <div class="input-number">
    <input type="number" id="input-number">
    <button class="btn" id="input-number-btn">Отправить</button>
  </div>
</div>

→ Ссылка