Решено: как случайным образом отсортировать массив javascript

Основная проблема со случайной сортировкой массива заключается в том, что она может занимать очень много времени.

 arrays sorting random

I have an array of objects that I need to randomly sort.  The objects have a property called "order" that is a number.  I need to sort the array so that the order property is in random order, but the other properties of each object stay in place.  How can I do this?


A:

You can use <code>sort</code> with a function that returns a random value:


<code>const arr = [
  { id: 1, name: 'foo' },
  { id: 2, name: 'bar' },
];
arr.sort(() =&gt; Math.random() - 0.5);
console.log(arr);</code>



Массивы и функции сортировки

Массив — это набор данных, доступ к которым можно получить с помощью индекса. Первый элемент массива имеет индекс 0, второй элемент — индекс 1 и так далее. Чтобы получить доступ к третьему элементу в массиве, вы должны использовать номер индекса 3.

Чтобы отсортировать массив, вы можете использовать функцию сортировки. Функция сортировки принимает два аргумента: массив и функцию сравнения. Функция сравнения сравнивает два элемента массива и возвращает логическое значение. Если функция сравнения возвращает true, то элемент в позиции x в массиве будет помещен перед элементом в позиции y в массиве. Если функция сравнения возвращает false, то элемент в позиции x в массиве будет помещен после элемента в позиции y в массиве.

Вот пример того, как использовать функцию сортировки для сортировки массива чисел:

номера переменных = [1, 2, 3, 4]; // Сортировка чисел с помощью функции сравнения var sortedNumbers = numbers .sort(function(a, b) { return a – b; }); // Распечатать отсортированные числа console .log(sortedNumbers);

Случайные массивы

Массив — это набор данных, доступ к которым можно получить с помощью индекса. В JavaScript массивы создаются с помощью конструктора Array.

Чтобы создать пустой массив, используйте конструктор Array():

var myArray = новый массив();

Чтобы создать массив из пяти элементов, используйте следующий код:

var myArray = новый массив (5);

myArray[0] = «JavaScript»; myArray[1] = «Массивы»; myArray[2] = «Функции»; myArray[3] = «Строки»; myArray[4] = «Булевы значения»; myArray[5] = «Числа»;

Похожие посты:

Оставьте комментарий