Как сгенерировать массив с буквами без повторов?
Мне надо сгенерировать масив с 5 неповторяющихся букв.
let characters = 'abcdefghijklmnopqrstuvwxyz';
let charactersLength = characters.length;
function generateArray(length) {
let result = [];
for (let i = 0; i < length; i++) {
result.push(characters.charAt(Math.floor(Math.random() *
charactersLength)));
}
return result;
}
let generatedArray = generateArray(5);
let uniqueArray = [...new Set(generatedArray)];
console.log(generatedArray);
console.log(uniqueArray);
uniqueArray просто удалаляет повторную букву, как мне сделать проверку перед тем как визивать функцию?
Ответы (1 шт):
Автор решения: UserTest013
→ Ссылка
function generateArray(length) {
const uniqueSet = new Set();
while (uniqueSet.size < length) {
const candidate = 97 + Math.floor(Math.random() * 26);
uniqueSet.add(candidate);
}
return [...uniqueSet].map((x) => String.fromCharCode(x));
}
console.log(generateArray(5).join(","));
console.log(generateArray(5).join(","));
console.log(generateArray(5).join(","));
console.log(generateArray(5).join(","));