random()
: The random() method returns a random item from the collection:
const collection = collect([1, 2, 3, 4, 5]);
collection.random();
// 4 (retrieved randomly)
You may optionally pass an integer to random to specify how many items you would like to randomly retrieve. A collection of items is always returned when explicitly passing the number of items you wish to receive:
const threeRandom = collection.random(3);
// Collection { items: [ 5, 3, 4 ] } (retrieved randomly)
const oneRandom = collection.random(1);
// Collection { items: [ 3 ] } (retrieved randomly)
oneRandom.all();
// [3]
reduce()
: The reduce() method reduces the collection to a single value, passing the result of each iteration into the subsequent iteration:
const collection = collect([1, 2, 3]);
const total = collection.reduce((carry, item) => carry + item);
// 6
The value for carry on the first iteration is null; however, you may specify its initial value by passing a second argument to reduce:
const total = collection.reduce((carry, item) => carry + item, 4);
// 10