L'outil Sélecteur Aléatoire tire des nombres d'une plage, ou extrait des éléments d'une liste un par ligne, dans le navigateur. Deux boutons de mode se tiennent au-dessus : Nombre Aléatoire, celui par défaut, avec Min pré-rempli à 1 et Max à 100, et Élément Aléatoire de la Liste, avec une zone de texte dont le marqueur est Alice, Bob, Charlie, Diana. En dessous, un champ Nombre (1 par défaut), une case Autoriser les répétitions (éteinte par défaut), et le bouton Choisir Aléatoire. En l'appuyant, les tirages s'impriment dans une grande ligne de Résultat, avec un bouton de copie en dessous, et chaque tirage tombe aussi dans une liste Historique des dix derniers résultats. Rien n'est envoyé nulle part : le compte de la plage, la coupe de la liste et les tirages courent sur l'appareil, et un rechargement de la page efface le résultat et l'historique.
Que la boîte reçoit et ce qu'elle rend
L'entrée sont les deux boutons de mode, les champs du mode, le Nombre et le commutateur Autoriser les répétitions, et la seule action est le bouton Choisir Aléatoire, donc rien n'est calculé en direct : le résultat ne change que quand vous l'appuyez. Le bloc de résultat montre une petite étiquette de Résultat, les tirages en gros texte, et un bouton de copie qui copie exactement la chaîne de résultat. Il n'y a pas de bouton d'effacement ni de moyen de réinitialiser : le résultat reste à l'écran jusqu'à ce que le tirage suivant réussi l'écrase, et la liste d'Historique grossit jusqu'à dix entrées, la plus neuve d'abord.
Comment le mode nombre tire
Les champs Min et Max sont lus comme des entiers, donc un décimal dans l'un des deux est lu comme sa partie entière : un Min de 1.9 est un Min de 1. La plage est incluse aux deux bouts, et chaque tirage est le sol de la taille de la plage fois une fraction aléatoire, ajouté au minimum, ce qui rend chaque entier de la plage également probable : sur dix mille tirages de 1 à 10, chaque valeur est tombée entre 970 et 1050 fois. La taille de la plage est max moins min plus un, et chaque demande tire autant de fois que dit le Nombre, une par case.
Ce que le sans répétitions fait dans chaque mode
Avec Autoriser les répétitions éteinte, le mode nombre d'abord coupe la demande à la taille de la plage : demander cinq tirages de 1 à 3 en tire trois, parce qu'il n'y a que trois nombres. Chaque case alors tire, et si le nombre tiré avait déjà sorti dans ce tour, il tire à nouveau, dans un nouveau tirage qui ne consomme pas la case, donc le résultat a toujours le minimum de nombre et taille de plage nombres uniques ; une plage où le minimum est égal au maximum, comme 7 à 7, rend un seul 7 quoi que vous demandiez. Le mode liste est la même idée avec un tas : chaque tirage prend un élément du tas et le retire, donc chaque ligne distincte que vous avez tapée est tirée au plus une fois, et les tirages s'arrêtent avant si le tas se vide avant le Nombre.
Ce que le mode liste fait de votre texte
La liste est coupée par les sauts de ligne, chaque ligne a les espaces des bords retirés, et les lignes qui restent vides sont jetées, donc une ligne de Alice avec un espace final se fait Alice, et une ligne vide entre noms est ignorée. Les lignes répétées ne se fondent pas : deux lignes qui lisent Alice mettent deux entrées de Alice dans le tas, et avec le sans répétitions, un tirage de deux peut encore revenir A, A, parce que les deux entrées sont des membres distincts du tas. Une entrée qui est vide, ou qui n'est que des espaces et des sauts de ligne, ne laisse aucun élément, et le tirage ne fait rien.
Quand un tirage ne fait rien
Trois entrées font du bouton un rien : un Min qui est plus grand que le Max, un Min ou un Max qui n'est pas un nombre, et une liste qui ne laisse rien après avoir été rognée. Dans chaque cas la page ne fait pas de résultat et n'ajoute pas d'entrée à l'historique, et le résultat précédent reste exactement où il était, parce qu'un tirage raté ne l'efface pas. Le champ Nombre est le plus indulgent : un Nombre vide, un mot, ou un 0, se lisent tous comme 1, donc le champ peut être vide et le tirage suit en tirant une fois.
Où vont les nombres et les noms
Nulle part hors de l'appareil. Les champs sont lus par la page, les tirages courent sur Math.random dans le navigateur, et aucune requête réseau n'a lieu à aucun moment. Le résultat et l'historique de dix entrées vivent seulement dans l'état de la page : il n'y a ni historique stocké ni stockage, donc recharger l'onglet vide les deux. Copier utilise le presse-papiers du navigateur, donc les valeurs tirées quittent la page seulement si vous appuyez sur copier et les collez ailleurs.
De quoi il ne s'agit pas
L'outil tire, il ne génère pas de valeurs sûres : Math.random n'est pas une source cryptographique, donc pour les identifiants usez le Générateur UUID, et pour les mots de passe le Générateur de Mots de Passe, qui sont construits sur le hasard sûr du navigateur. C'est aussi l'extrémité légère des nombres aléatoires : pour une plage avec plus d'options, le Générateur de Nombres Aléatoires va plus loin. Pour le pas à pas d'un autre outil calculé dans le navigateur de la même veine, voyez le guide de similarité de chaînes.