apprendre JS cette semaine. P>
est-il possible d'utiliser math.random pour renvoyer une valeur aléatoire dans un tableau? Cette valeur est-elle une chaîne et travaille toujours? P>
5 Réponses :
Vous pouvez prendre le numéro de point flottant (entre 0 et 1, non inclus) et le convertir en un index à la matrice (entier compris entre 0 et la longueur de la matrice - 1). Par exemple:
Merci! J'utilise des chaînes de déclaration plutôt plus longues dans chaque valeur de matrice. Existe-t-il un moyen de l'écrire syntaxiquement, ce n'est pas seulement une très grande ligne?
Peu importe comment construisez-vous le tableau. La partie importante est plancher (longueur_of_the_array * aléatoire_value_between_0_and_1) code>.
Lire ceci:
var arr = [1, 2, 3, 4, 5, 6]; var r = arr[Math.floor(Math.random()*a.length)]; // r will store a value from a pseudo-random position at arr.
Math.Round (Math.Random () * A.Length) peut renvoyer un nombre égal à A.Length, ce qui n'est pas un index valide au tableau.
Veuillez vérifier sa longueur et non une longueur
Oui, c'est bien possible. Voici quelques exemples de code: Notez que Math.Floor doit être utilisé à la place de Math.Round, afin d'obtenir une distribution de numéro uniforme. P> P>
Merci pour toute votre aide.
var randomVariable = arr[Math.floor(2*Math.random())]
Vous devez utiliser arr.l.length code>, pas
2 code>.
Vous pouvez utiliser ceci:
var array = []; for(i = 0; i < 6; i++) { array[i] = Math.floor( Math.random() * 60 ); }