A selection of helpful code snippets.
// querySelector Alias
const $ = function (target, origin = document) {
return origin.querySelector(target)
}
const $$ = function (target, origin = document) {
return Array.from(origin.querySelectorAll(target)
} //randomise the order of an array
function shuffle(array) {
for (let i = array.length - 1; i > 0; i--) {
let j = Math.floor(Math.random() * (i + 1));
[array[i], array[j]] = [array[j], array[i]];
}
}} // Random pick functions
function randomIntTween(min, max) {
const range = max - min;
const result = min + Math.floor(Math.random() * range);
return result;
}
function bellCurveTween(min, max) {
return Math.floor(
(randomIntTween(min, max) + randomIntTween(min, max)) / 2,
);
}
function pickFrom(array, bellCurve = false) {
let index;
if (bellCurve) {
index = bellCurveTween(0, array.length);
} else {
index = randomIntTween(0, array.length);
}
return array[index];
}