Как сгенерировать массив только из уникальных чисел определенной длины?

Мне необходимо сгенерировать массив из уникальных чисел.
Длина массива(unikArr) должна быть например равна lengthArr
Как в условии цикла указать, работать до тех пор пока массив не наполнится до нужно значения lengthArr
let generateUnikArr = (lengthArr) => {
                    //указываю диапазон чисел которые мне необходимы в массиве
                    let min = 1
                    let max = 100
                    let unikArr = []
                    let i = 0
                 
                    while( i < ???) {
                        //генерирую число
                        let randomNum = Math.floor(Math.random() * ((max + 1) - min)) + min 
                        //проверяю есть ли число в уже массиве
                        let dublicate = wins.includes(randomNum)
                        if( dublicate == true ) {
                            //если есть ничего не делаю
                        } else {
                            //если нет такого числа в массиве, то добавляю
                            wins.push(randomNum) 
                        }
                        i++
                    }

                    return unikArr 
                }
                console.log(randomWin(3))
  • Вопрос задан
  • 104 просмотра
Решения вопроса 1
0xD34F
@0xD34F Куратор тега JavaScript
function createRandomArr(length, min, max) {
  const values = Array.from({ length: max - min + 1 }, (n, i) => min + i);
  return Array.from({ length }, () => values.splice(Math.random() * values.length | 0, 1)[0]);
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы