Wie mischt man Werte in einem JavaScript-Array ohne Wiederholung?

8

Ich versuche ein JavaScript-Kartenspiel zu erstellen und möchte 5 Karten ohne Wiederholung auswählen:

%Vor%

Wie kann ich sicherstellen, dass es keine Wiederholung gibt, wenn ich 5 Karten auswähle?

    
Floor Drees 19.09.2013, 11:54
quelle

3 Antworten

10

Bereite ein Array aus allen 48 Karten vor (fehlen dir Asse?)

Jedes Mal, wenn Sie eine Karte auswählen, entfernen Sie sie aus dem Array.

Die nächste Zeichnung stammt aus dem reduzierten Array, also kann es keine Duplikate geben.

Alternative:

Beginnen Sie mit dem gleichen Array und mischen Sie es . Nimm die ersten fünf Karten.

    
Thilo 19.09.2013, 11:55
quelle
3

Sie könnten auch eine Markierungsliste erstellen, in die Sie die bereits verwendete Karte einfügen!

%Vor%

wiederhole das für jede Karte:

%Vor%     
Joe 19.09.2013 12:03
quelle
2

Wie andere schon sagten, benutze einen Fisher-Yates-Shuffle, dann wähle die ersten fünf:

%Vor%     
Thorben Bochenek 19.09.2013 12:11
quelle

Tags und Links