Rezolvat: cum se sortează aleatoriu o matrice javascript

Principala problemă cu sortarea aleatorie a unei matrice este că poate consuma foarte mult timp.

 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>



Matrice și funcții de sortare

O matrice este o colecție de date care poate fi accesată folosind un număr index. Primul element din matrice este la indexul 0, al doilea element este la indexul 1 și așa mai departe. Pentru a accesa al treilea element din matrice, ați folosi numărul de index 3.

Pentru a sorta o matrice, puteți utiliza o funcție de sortare. Funcția de sortare ia două argumente: o matrice și o funcție de comparație. Funcția de comparare compară două elemente din matrice și returnează o valoare booleană. Dacă funcția de comparație returnează true, atunci elementul din poziția x din matrice va fi plasat înaintea elementului din poziția y din matrice. Dacă funcția de comparație returnează false, atunci elementul din poziția x în matrice va fi plasat după elementul din poziția y în matrice.

Iată un exemplu despre cum să utilizați o funcție de sortare pentru a sorta o matrice de numere:

numere var = [1, 2, 3, 4]; // Sortează numerele folosind o funcție de comparare var sortedNumbers = numere .sort(function(a, b) { return a – b; }); // Imprimă sortedNumbers consola .log(sortedNumbers);

Matrice aleatoare

O matrice este o colecție de date care poate fi accesată folosind un număr index. În JavaScript, matricele sunt create folosind constructorul Array.

Pentru a crea o matrice goală, utilizați constructorul Array():

var myArray = new Array();

Pentru a crea o matrice cu cinci elemente, utilizați următorul cod:

var myArray = new Array(5);

myArray[0] = „JavaScript”; myArray[1] = „Matrice”; myArray[2] = „Funcții”; myArray[3] = „Șiruri”; myArray[4] = „Booleans”; myArray[5] = „Numere”;

Postări asemănatoare:

Lăsați un comentariu