infinite-random-list
An infinite list of shuffled elements ∞
Takes a reference set of items , returns a random item from this array, infinitely. Never pass 2 identical items in a row.
- non-deterministic
- goes through a full set before shuffling again
- will
slice()
the given array
Useful for generating an infinite grid based on different patterns/positions, or showing random informations without showing the same item multiple times.
Installation 📦
npm i infinite-random-list -S
Usage & example 💾
import InfiniteRandomList from 'infinite-random-list'
let list = new InfiniteRandomList(['Emma', 'Hannah', 'Alex', 'Mia'])
list.get() // 'Alex'
list.get() // 'Mia'
list.get() // 'Emma'
list.get() // 'Hannah'
// shuffles again here
list.get() // 'Mia'
list.get() // 'Alex'
...
-
new InfiniteRandomList(items)
Returns a list instance populated withitems
. -
list.set(items)
Sets items (Array) as the reference items. -
list.get()
Returns one item from the original set (passed usinglist.set(items)
or the constructor). Always returns something (i.e. the list doesn't get empty). Always return a different item.
License 📝
MIT.