Buduję kostki tylko HTML i JavaScript. Chcę wynik dwóch losowo wygenerowanych numerów (dodatek). Jak mogę uzyskać wynik jako sumę obu numerów.

<!DOCTYPE html>
<html>
<head>
    <title>Dice</title>
    <h1 style="text-align:center;color:lime;font-size:300%">Dice</h1>
    <hr/>
    <br/>
    <h1 style="color: red;text-align:center;font-size:250%">You Have Got:</h1>
    <h1 style="color:gold;text-align:center;font-size:300%"><script type="text/javascript">
        var num1 = document.write(Math.floor(Math.random() * 6 + 1));
        
        document.write("<br/>");
        document.write("<br/>");

        var nu,2 = document.write(Math.floor(Math.random() * 6 + 1));
        
        document.write("<br/>");

        num1 = parseFloat(num1);
        num2 = parseFloat(num2
);
  
        document.write("<br/>");

        document.write("Result:");

        document.write(dice1 + dice2);
     </script></h1>
    <button onClick="window.location.reload();" style="font-size:200%; margin:auto;display:block;background-color:black;color:cyan">Roll Again</button>
</head>
<body style="background-color:black">
</body>
</html>

Więc jeśli uruchomię ten program. Dostaję wynik jako Nan. próbowałem

parseInt();
parseFloat();   

Oto ekran

0
N. Sheik Ahamed Iqbal 21 listopad 2020, 15:56

1 odpowiedź

Najlepsza odpowiedź

Wystarczy przechowywać liczby jako oddzielne zmienne, więc nie musisz konwertować, gdy je przed dodaniem.

<!DOCTYPE html>
<html>

<head>
  <title>Dice</title>
  <h1 style="text-align:center;color:lime;font-size:300%">Dice</h1>
  <hr />
  <br />
  <h1 style="color: red;text-align:center;font-size:250%">You Have Got:</h1>
  <h1 style="color:gold;text-align:center;font-size:300%">
    <script type="text/javascript">

      var num1 = Math.floor(Math.random() * 6 + 1);
      document.write(num1);

      document.write("<br/>");
      document.write("<br/>");

      var num2 = Math.floor(Math.random() * 6 + 1);
      document.write(num2);

      document.write("<br/>");

      //num1 = parseFloat(num1);
      //num2 = parseFloat(num2);

      document.write("<br/>");

      document.write("Result:");

      document.write(num1 + num2);
    </script>
  </h1>
  <button onClick="window.location.reload();"
    style="font-size:200%; margin:auto;display:block;background-color:black;color:cyan">Roll Again</button>
</head>

<body style="background-color:black">
</body>

</html>
1
Sandsten 21 listopad 2020, 13:07