Esta tradução está incompleta. Ajude atraduzir este artigo.
Sumário
A função Math.random()
retorna um ponto de flutuação (floating-point), números pseudo-aleatórios em uma variação [0, 1)
ou seja, de 0 (inclusivo) até, mas não incluindo, 1 (exclusivo), que depois você pode dimensionar para a sua variação desejada.
O gerador de números aleatórios é semeado a partir do tempo atual, assim com em Java.
Sintaxe
Math.random()
Parâmetros
None.
Exemplos
Exemplo: Usando Math.random
Note que os números em JavaScript são pontos de flutuação(floating-point) IEEE 754 numbers que arredondam para o número mais próximo, essas variações, excluindo a variação para Math.random()
, não são exatas, e dependem dos limites do possível em casos extremamente raros (na ordem de 1 para 262) para calcular os usualmente excluídos no limite.
// Retorna um número aleatório entre 0 (inclusivo) e 1 (exclusivo) function getRandom() { return Math.random(); }
// Retorna um número aleatório min (inclusivo) e max (exclusivo) function getRandomArbitrary(min, max) { return Math.random() * (max - min) + min; }
// Retorna um número inteiro entre min (incluso) e max (excluído) // Usando Math.round() vai lhe dar uma distribuição não uniforme! function getRandomInt(min, max) { return Math.floor(Math.random() * (max - min)) + min; }
Especificações
Especificação | Status | Comentário |
---|---|---|
ECMAScript 1st Edition. JavaScript 1.0 (UNIX Only) / JavaScript 1.1 (All platform) | Standard | Definição inicial. |
ECMAScript 5.1 (ECMA-262) The definition of 'Math.random' in that specification. |
Standard | |
ECMAScript 2015 (6th Edition, ECMA-262) The definition of 'Math.random' in that specification. |
Standard |
Compatibilidade de Navegadores
Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
Suporte básico |
(Yes) | (Yes) | (Yes) | (Yes) | (Yes) |
Feature | Android | Chrome for Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Suporte básico |
(Yes) | (Yes) | (Yes) | (Yes) | (Yes) | (Yes) |