I'm making a very each game for school project, it should works like this: User click spin, 3 cards will display elements If all 3 cards matches, the balance will add $50, and pop up alert "you won!" Otherwise, it will subtract $10 for each spin doesn't match. If the balance fall below $10, pop up alert "you have less than $10.
I'm trying to make the alert pop up after the slots rendered and balance updated, however the alert always pop up ahead. Any idea how to fix it?
let slotsContainer = document.getElementById('slots');
let balanceContainer = document.getElementById("balance-container");
let tries = document.getElementById("tries");
const INITIAL_AMOUNT = 1000;
let values = ['❤', '', ''];
let number_of_spinners = 3;
let spinCount = 0;
let slot_els = [];
let balance = INITIAL_AMOUNT;
balanceContainer.innerHTML = balance;
function render(result) {
  slotsContainer.innerHTML = '';
  for (var i = 0; i < number_of_spinners; i++) {
    let spinner = document.createElement('div');
    spinner.innerHTML = result[i];
    slotsContainer.appendChild(spinner);
    slot_els.push(spinner);
  }
}
render(['?', '?', '?'])
function getOneRandomNumber() {
  return Math.floor(Math.random() * values.length);
}
function spin_func() {
  let firstRandomValue = getOneRandomNumber();
  let secondRandomValue = getOneRandomNumber();
  let thirdRandomValue = getOneRandomNumber();
  render([values[firstRandomValue], values[secondRandomValue], values[thirdRandomValue]]);
  if ((firstRandomValue === secondRandomValue) && (secondRandomValue === thirdRandomValue)) {
    balance += 50;
    balanceContainer.innerHTML = balance;
    alert("you won!");
  } else {
    if (balance >= 10) {
      balance -= 10;
      balanceContainer.innerHTML = balance;
    } else {
      alert("You have less than $10");
    }
  }
  console.log('spin!!!');
}
let spin_button = document.getElementById('spin');
spin_button.onclick = spin_func