Gelöst: Wie man ein Array-Javascript zufällig sortiert

Das Hauptproblem beim zufälligen Sortieren eines Arrays besteht darin, dass es sehr zeitaufwändig sein kann.

 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>



Arrays und Sortierfunktionen

Ein Array ist eine Sammlung von Daten, auf die über eine Indexnummer zugegriffen werden kann. Das erste Element im Array hat den Index 0, das zweite Element den Index 1 und so weiter. Um auf das dritte Element im Array zuzugreifen, würden Sie die Indexnummer 3 verwenden.

Um ein Array zu sortieren, können Sie eine Sortierfunktion verwenden. Die Sortierfunktion nimmt zwei Argumente entgegen: ein Array und eine Vergleichsfunktion. Die Vergleichsfunktion vergleicht zwei Elemente im Array und gibt einen booleschen Wert zurück. Wenn die Vergleichsfunktion wahr zurückgibt, wird das Element an Position x im Array vor dem Element an Position y im Array platziert. Wenn die Vergleichsfunktion falsch zurückgibt, wird das Element an Position x im Array nach dem Element an Position y im Array platziert.

Hier ist ein Beispiel für die Verwendung einer Sortierfunktion zum Sortieren eines Arrays von Zahlen:

var Zahlen = [1, 2, 3, 4]; // Zahlen mit einer Vergleichsfunktion sortieren var sortedNumbers = numbers .sort(function(a, b) { return a – b; }); // sortedNumbers ausgeben console .log(sortedNumbers);

Zufällige Arrays

Ein Array ist eine Sammlung von Daten, auf die über eine Indexnummer zugegriffen werden kann. In JavaScript werden Arrays mit dem Array-Konstruktor erstellt.

Um ein leeres Array zu erstellen, verwenden Sie den Array()-Konstruktor:

var meinArray = neues Array();

Verwenden Sie den folgenden Code, um ein Array mit fünf Elementen zu erstellen:

var meinArray = neues Array(5);

meinArray[0] = „JavaScript“; meinArray[1] = „Arrays“; meinArray[2] = „Funktionen“; meinArray[3] = „Strings“; meinArray[4] = „Booleans“; meinArray[5] = „Zahlen“;

Zusammenhängende Posts:

Hinterlasse einen Kommentar