Сегодня мы рассмотрим, как с помощью JavaScript можно перемешать элементы массива случайным образом. Этот процесс довольно прост и включает использование встроенного метода sort().
Для перемешивания элементов мы используем метод sort(). Арг
list.sort(() => Math.random() - 0.5);
Как это работает
. и sort() сравнивает два элемента массива aМетод bФункция-аргумент применяется к каждому элементу массива. aполучает индекс, меньший, чем у элемента b. Если функция возвращает значение больше 0, a получает индекс больше, чем у b.
Вариации
Мы можем передавать два элемента массива в функцию, как показано ниже:
list.sort((a, b) => Math.random() - 0.5);
Однако, в нашем примере это не используется. Этот метод позволяет получить случайный порядок элементов при каждом вызове sort().
Создание нового массива
Вызов метода sort() не изменяет исходный массив. Чтобы сохранить результат перемешивания, можно создать новый массив:
Или можно переписать исходный массив, если он был создан как переменная:
let list = [1, 2, 3, 4, 5, 6, 7, 8, 9];
list = list.sort(() => Math.random() - 0.5);
Заключение
Использование метода sort() с функцией, возвращающей случайное значение, является простым и эффективным способом перемешивания элементов массива в JavaScript. Этот подход может быть полезен в различных ситуациях, когда требуется случайный порядок элементов, таких как игры, тесты и случайные выборки данных.