Heim > Artikel > Web-Frontend > Zufallszahlen in Javascript-Mathe-Zufallszahlen So generieren Sie Zufallszahlen innerhalb eines bestimmten Wertebereichs _Javascript-Kenntnisse
Heute hat mich ein Freund um Rat gefragt: Wie man mit JavaScript Zufallszahlen in einem bestimmten Bereich generiert. Ich glaube, jeder weiß, dass Math.random() eine Methode zur Generierung von Zufallszahlen ist. Im allgemeinen Referenzhandbuch wird jedoch nicht erläutert, wie mit dieser Methode Zufallszahlen innerhalb eines bestimmten Bereichs generiert werden. Dieses Mal werde ich Math.random() im Detail vorstellen und erläutern, wie man damit Zufallszahlen innerhalb eines bestimmten Bereichs generiert.
w3schools random()-Tutorial
Definition und Verwendung
Die Methode random() gibt eine Zufallszahl zwischen 0 und 1 zurück.
Grammatik
Math.random()
Rückgabewert
Eine Pseudozufallszahl zwischen 0,0 und 1,0.
Beispiel
In diesem Beispiel erhalten wir eine Zufallszahl zwischen 0 und 1:
<script type="text/javascript"> document.write(Math.random()); </script> // 输出: 0.15246391076246546
So generieren Sie Zufallszahlen innerhalb eines bestimmten Bereichs
Nachdem Sie das w3school-Tutorial gelesen haben, sollten Sie die grundlegende Verwendung der Math.random()-Methode kennen.
Verwenden Sie parseInt(), Math.floor() oder Math.ceil() zum Runden
Wir sehen, dass die Verwendung der Math.random()-Methode direkt eine Zahl kleiner als 1 generiert, also:
Math.random()*5
Das erhaltene Ergebnis ist eine Zufallszahl kleiner als 5. Normalerweise hoffen wir, eine Ganzzahl zwischen 0 und 5 zu erhalten. Daher müssen wir das Ergebnis runden, um die erwartete Ganzzahl zu erhalten. parseInt(), Math.floor() und Math.ceil() können alle eine Rundungsrolle spielen.
var randomNum = Math.random()*5; alert(randomNum); // 2.9045290905811183 alert(parseInt(randomNum,10)); // 2 alert(Math.floor(randomNum)); // 2 alert(Math.ceil(randomNum)); // 3
Aus dem getesteten Code können wir ersehen, dass parseInt() und Math.floor() den gleichen Effekt haben, wobei beide den ganzzahligen Teil nach unten nehmen. ParseInt(Math.random()*5,10) und Math.floor(Math.random()*5) sind also beide generierte Zufallszahlen zwischen 0 und 4, Math.ceil(Math.random()*5 ) ist eine generierte Zufallszahl zwischen 1 und 5.
Generieren Sie Zufallszahlen innerhalb eines angegebenen Bereichs
Wenn Sie also eine Zufallszahl von 1 bis zu einem beliebigen Wert generieren möchten, lautet die Formel wie folgt:
// max - 期望的最大值 parseInt(Math.random()*max,10)+1; Math.floor(Math.random()*max)+1; Math.ceil(Math.random()*max);
Wenn Sie eine Zufallszahl von 0 bis zu einem beliebigen Wert generieren möchten, lautet die Formel wie folgt:
// max - 期望的最大值 parseInt(Math.random()*(max+1),10); Math.floor(Math.random()*(max+1)); 如果你希望生成任意值到任意值的随机数,公式就是这样的: // max - 期望的最大值 // min - 期望的最小值 parseInt(Math.random()*(max-min+1)+min,10); Math.floor(Math.random()*(max-min+1)+min);
Haben Sie nach dem Lesen dieses Artikels viel gelernt? Verstehen Sie die Verwendung von Zufallszahlen in der Mathematik? Ich hoffe, dieser Artikel kann Ihnen helfen, danke!