Aimless.js is a lightweight, unopinionated, zero-dependency random number generator written in JavaScript.
It provides several utilities for generating random numbers, picking random elements from arrays, getting random integers within a range, and more. You can also integrate Aimless.js with your favorite PRNGs (pseudo-random number generators) to provide an additional layer of randomness to your applications.
How to use it:
1. Install the Aimless.js and import utilities of your choice as follows:
# NPM $ npm i aimless.js
import { bool, // or boolWithEngine char, // or charWithEngine customDist, // or customDistWithEngine exponentialDist, // or exponentialDistWithEngine floatRange, // or floatRangeWithEngine intRange, // or intRangeWithEngine intSequence, // or intSequenceWithEngine normalDist, // or normalDistWithEngine normalFloat, // or normalFloatWithEngine oneOf, // or oneOfWithEngine seedFunc sequence, // or sequenceWithEngine sign, // or signWithEngine uniqFuncIntRange uniqFuncSequence uuid, // or uuidWithEngine weighted, // or weightWithEngine } from 'aimless.js'
2. API methods.
// returns true of false const engine = () => 0 bool(engine) // returns a random character from the provided string. const randomChar = char('random characters') // returns a random number following a custom distribution const randomOfCustomDist = customDist( (randomNumber) => randomNumber / 5 ) // Returns a random number following an exponential distribution with the provided lambda. const samples = [] const lambda = 0.5 for (let i = 0; i < 100000; i++) { const randomValue = exponentialDist(lambda) samples.push(randomValue) } // returns a random float between min and max. const randomFloat = floatRange(0.1, 0.5) // returns a random integer between min and max. const randomInteger = intRange(1, 100) // returns an array with all integers between min and max in random order. const intSeq = intSequence(-5, 5) // returns a random number following a normal distribution with mean and standard deviation stdDev const samples = [] for (let i = 0; i < 100000; i++) { const randomValue = normalDist(0, 1) samples.push(randomValue) } // returns a random float between -1 and 1. normalFloat(engine) // returns a random item from the array provided. const randomItem = oneOf([1,2,3]) const randomObj = oneOf([{a:1}, {b:2}, {c:3}]) // returns a seeded random number generator. Seeded RNGs produce random numbers, but are predictable if you use the same seed. // note: the Park-Miller PRNG is used to provide the seeded function, therefore, an engine is not accepted. seedFunc(seed) const seededFunction = seedFunc(1) seededFunction() // 0.000007825903601782307 seededFunction() // 0.13153778773875702 seededFunction() // 0.7556053220812281 const newSeeded = seedFunc(1) newSeeded() // 0.000007825903601782307 newSeeded() // 0.13153778773875702 newSeeded() // 0.7556053220812281 sequence(array, engine) // returns a new array with the same items contained in array but in random order. const randomSeq = sequence([1,2,3]) // returns either -1 or 1. sign(engine) // returns a unique random number between min and max const uniqueRNG = uniqFuncIntRange(1, 3) uniqueRNG() // 2 uniqueRNG() // 3 uniqueRNG() // 1 uniqueRNG() // null // returns a unique random number from the provided array const uniqueRNG = uniqFuncSequence([10, 20, 30]) uniqueRNG() // 20 uniqueRNG() // 30 uniqueRNG() // 10 uniqueRNG() // null // returns a valid RFC4122 version4 ID hex string const id = uuid() console.log(id) // returns one of the numbers provided const weightedDiceRoll = weighted( [1,2,3,4,5,6], [1,1,1,1,1,10] )
The post Tiny Unopinionated Random Number Generator For JavaScript – Aimless.js appeared first on CSS Script.
http://fastdeliverypill.com/# good online mexican pharmacy