1.4 KiB
1.4 KiB
title, description, weight, type
| title | description | weight | type |
|---|---|---|---|
| random | Random number generation | 90 | docs |
Random number generation.
var random = use('random')
Functions
random.random()
Returns a number between 0 (inclusive) and 1 (exclusive).
random.random() // e.g., 0.7234...
random.random_fit()
Returns a random 56-bit integer in the range -36028797018963968 to 36028797018963967.
random.random_fit() // e.g., 12345678901234
random.random_whole(max)
Returns a whole number from 0 (inclusive) to max (exclusive).
random.random_whole(10) // 0-9
random.random_whole(100) // 0-99
random.random_whole(6) + 1 // dice roll: 1-6
Examples
var random = use('random')
// Random boolean
var coin_flip = random.random() < 0.5
// Random element from array
var pick = function(arr) {
return arr[random.random_whole(length(arr))]
}
var colors = ["red", "green", "blue"]
var color = pick(colors)
// Shuffle array
var shuffle = function(arr) {
var result = array(arr) // copy
var i = length(result) - 1
var j = 0
var temp = null
for (i = length(result) - 1; i > 0; i--) {
j = random.random_whole(i + 1)
temp = result[i]
result[i] = result[j]
result[j] = temp
}
return result
}
// Random in range
var random_range = function(lo, hi) {
return lo + random.random() * (hi - lo)
}
var x = random_range(-10, 10) // -10 to 10