API:RNG::next
From Spherical
Revision as of 03:53, 10 August 2017 by Bruce Pascoe (talk | contribs) (Improving headings some more)
The RNG::next() method generates a random floating-point number in the range [0,1).
Usage
number = rng_object.next();
Contents
API Information
Description
RNG::next() generates a pseudorandom floating-point number greater than or equal to 0 but less than 1 and returns the value generated. The number generated is entirely determined by the current state of the RNG instance before the call (see RNG::state). After calling this function, the state is advanced so a different value will be generated next time. Therefore if you save the RNG's state before calling RNG.next(), then restore it afterwards and call RNG.next() again, the same value will be returned.
Parameters
This method has no parameters.
Return Value
A floating-point number in the range [0,1).
Examples
Shuffle an array
let items = [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ] let rnGen = new RNG(); for (let i = items.length - 1; i > 0; --i) { let j = Math.floor(rnGen.next() * (i + 1)); // discrete [0,i] let orig_i = items[i]; items[i] = items[j]; items[j] = orig_i; }
See Also