espressione JavaScript per generare un numero a 5 cifre in tutti i casi
-
24-09-2019 - |
Domanda
per i miei test selenio ho bisogno di un fornitore di valore per ottenere un numero di 5 cifre in ogni caso. Il problema con javascript è che l'API di Math.random
supporta solo la generazione di un galleggiante 0.
partenza. Così deve essere compresa tra 10000
e 99999
.
Quindi, sarebbe facile se solo si genera 0.10000
e superiori, ma genera anche 0.01000
. Quindi, questo approccio non riesce:
Math.floor(Math.random()*100000+1)
E 'possibile generare un numero a 5 cifre in tutti i casi (in un'espressione!)?
Soluzione
Che dire:
Math.floor(Math.random()*90000) + 10000;
Altri suggerimenti
Sì, è possibile creare numeri casuali in un dato intervallo di:
var min = 10000;
var max = 99999;
var num = Math.floor(Math.random() * (max - min + 1)) + min;
In alternativa semplificata:
var num = Math.floor(Math.random() * 90000) + 10000;
se si desidera generare dire una codice postale, e non mente zeri iniziali finché si tratta di 5 cifre che è possibile utilizzare:
(""+Math.random()).substring(2,7)
È possibile ottenere un numero intero casuale compreso di un dato min e max numeri utilizzando la seguente funzione:
function getRandomIntInclusive(min, max) {
min = Math.ceil(min);
max = Math.floor(max);
return Math.floor(Math.random() * (max - min + 1)) + min;
}
Per ulteriori esempi e altri casi d'uso, checkout il Math.random MDN documentazione .