Ich mache ein einfaches Zufallszahlengenerator-Spiel mit JS und HTML. In diesem Spiel können Sie Mindest- und Höchstwerte von Zufallszahlen festlegen.
Beim Setzen der Variablen und Aufzeichnen des Ergebnisses erscheint jedoch eine unmögliche Zahl. Wenn ich beispielsweise den Mindestwert auf 50 und den Höchstwert auf 100 einstelle, werden Antworten wie 58650, 16750 oder 31450 angezeigt. Mir ist aufgefallen, dass die kleinste von Ihnen eingestellte Zahl immer am Ende erscheint. Ich habe versucht, das Format und den Code zu ändern, aber nichts scheint zu funktionieren.
Kennt jemand die Lösung für dieses Problem? Wir wissen Ihre Hilfe sehr zu schätzen, vielen Dank! !
Home.html (wahrscheinlich nicht das Problem):
<!DOCTYPE html> <html lang="en"> <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>Random Number Generator</title> <link rel="stylesheet" href="style.css"> </head> <body> <h1 class="Title">Random Number Generator</h1> <hr> <div class="container"> <p> Enter 2 numbers that you want the random number to be in between</p> <p id="result" class="hide"></p> <div class="container2"> <input id="inputmin" class="numinput" type="text"> <p>-</p> <input id="inputmax" class="numinput" type="text"> </div> <button id="submitbtn" class="submitbtn">Generate</button> </div> <script src="/Home.js"></script> </body> </html>
Home.js:
const usermininput = document.getElementById("inputmin") const usermaxinput = document.getElementById("inputmax") const usersubmitBtn = document.getElementById("submitbtn") const result = document.getElementById("result") function random(min, max) { return Math.floor(Math.random() * max) + min; } usersubmitBtn.addEventListener("click", () =>{ const usermin = usermininput.value const usermax = usermaxinput.value console.log(random(usermin,usermax)) })
输入元素的
value
属性是字符串,因此您需要先将其转换为数字(否则,+
执行字符串连接而不是加法)。这可以使用一元加运算符来完成,即const usermin = +usermininput.value
和const usermax = +usermaxinput.value
。或者,使用
并访问
valueAsNumber
属性。