Как вывести числа в случайном порядке?
Вывести таблицу 10 × 10, заполненную числами от 1 до 100 (таблица создаётся динамически) Вывел числа от 1 до 100. Как их перемешать теперь?
let colTable = document.getElementsByClassName('col');
for(let i = 0; i < 100; i++) {
colTable[i].innerHTML += i+1;
}
Ответы (2 шт):
Автор решения: MBo
→ Ссылка
Перемешайте с помощью алгоритма Фишера-Йетса.
Вероятно, будет проще сделать это в массиве, потом уже загрузить в таблицу.
Автор решения: Александр Лесив
→ Ссылка
Возможно, не настолько элегантно, как алгоритмический подход, но с задачей справляется
let arr = [];
// Создаем массив чисел от 1 до 10
for(let i = 1; i <= 100; i++) {
arr.push(i);
}
// arr.sort(() => 0.5 - Math.random());
// Не стрелочная функция
arr.sort(function(){ return 0.5 - Math.random()});
console.log('Массив с случайным порядком элементов: ', arr);