нем не повторялись?
Вероятно проще всего сгененировать массив, перемешать и забирать из него по одному значению, если диапазон не слишком огромен.
Создать переменную с массивом, и результат рандомного числа вкладывать в него, а в функции сделать проверку если такое число есть в массиве, то сделать рекурсию(вызвать эту функцию заново)
лучше бы поадекватнее переписать к слову, сразу пример, когда всё плохо кончится. вызовите функцию uniqueRandom 4 раза) const createUnique = (fn) => { const used = new Set(); return (...args) => { let result; while (used.has(result = fn(...args))); used.add(result); return result; } }; const uniqueRandom = createUnique(() => [1, 2, 3][Math.floor(Math.random() * 3)]);
Обсуждают сегодня