Heim > Web-Frontend > js-Tutorial > Wie wähle ich in JavaScript zufällig mehrere Elemente aus einem Array aus?

Wie wähle ich in JavaScript zufällig mehrere Elemente aus einem Array aus?

DDD
Freigeben: 2024-10-30 05:53:02
Original
369 Leute haben es durchsucht

How to Randomly Select Multiple Elements from an Array in JavaScript?

So wählen Sie zufällig mehrere Elemente aus einem Array aus

JavaScript bietet eine Array-Element-Randomisierungsfunktion mit Math.floor(Math.random() *items.length). Diese Methode wählt jedoch nur ein einzelnes Element aus. Für die Auswahl mehrerer Elemente benötigen wir einen umfassenderen Ansatz.

Lösung:

Um mehrere zufällige Elemente aus einem Array zu erhalten, können wir den folgenden zweistufigen Prozess implementieren :

  1. Mischen Sie das Array, um die Reihenfolge der Elemente zufällig zu bestimmen:

    const shuffled = array.sort(() => 0.5 - Math.random());
    Nach dem Login kopieren
  2. Extrahieren Sie ein Unterarray der gewünschten Länge aus dem gemischten Array :

    let selected = shuffled.slice(0, n);
    Nach dem Login kopieren

Demonstration:

Im Beispielcode deklarieren wir ein Zahlenarray und geben die Anzahl der zu extrahierenden Elemente an (N). Indem wir das Array mischen und in Scheiben schneiden, erhalten wir ein ausgewähltes Unterarray mit n zufälligen Elementen.

n = 5;
array = Array.from({ length: 50 }, (v, k) => k * 10); // [0,10,20,30,...,490]
var shuffled = array.sort(function(){ return 0.5 - Math.random() });
var selected = shuffled.slice(0,n);

document.querySelector('#out').textContent = selected.toString();
Nach dem Login kopieren

Dieser Ansatz bietet eine flexible und effiziente Möglichkeit, mehrere Elemente aus einem Array unabhängig von seiner Größe zufällig auszuwählen .

Das obige ist der detaillierte Inhalt vonWie wähle ich in JavaScript zufällig mehrere Elemente aus einem Array aus?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage