JavaScript-programma om kaarten te schudden

In dit voorbeeld leer je een JavaScript-programma te schrijven dat een pak kaarten schudt.

Om dit voorbeeld te begrijpen, moet u kennis hebben van de volgende JavaScript-programmeeronderwerpen:

  • JavaScript-matrix sorteren ()
  • JavaScript voor loop

Voorbeeld: stapel kaarten schudden

 // program to shuffle the deck of cards // declare card elements const suits = ("Spades", "Diamonds", "Club", "Heart"); const values = ( "Ace", "2", "3", "4", "5", "6", "7", "8", "9", "10", "Jack", "Queen", "King", ); // empty array to contain cards let deck = (); // create a deck of cards for (let i = 0; i < suits.length; i++) ( for (let x = 0; x  0; i--) ( let j = Math.floor(Math.random() * i); let temp = deck(i); deck(i) = deck(j); deck(j) = temp; ) console.log('The first five cards are:'); // display 5 results for (let i = 0; i < 5; i++) ( console.log(`$(deck(i).Value) of $(deck(i).Suit)`) ) 

Uitvoer

 De eerste vijf kaarten zijn: 4 van Club 5 of Diamonds Jack of Diamonds 2 of Club 4 of Spades

In het bovenstaande programma bevatten de variabelen voor kleuren en waarden de elementen van een kaart.

De geneste forlus wordt gebruikt om een ​​pak kaarten te maken.

  • We moeten een pak kaarten maken met elke reeks met alle waarden. Dus de eerste forlus herhaalt zich over alle kleuren en de tweede forlus herhaalt de waarden. Vervolgens worden de elementen gemaakt en aan de deckarray toegevoegd .
  • De array-elementen worden als een object opgeslagen als:
     ((Value: "Ace", Suit: "Spades"),(Value: "2", Suit: "Spades")… )

De tweede forlus wordt gebruikt om het spel kaarten te schudden.

  • Math.random() genereert een willekeurig getal.
  • Math.floor() geeft het getal terug door de waarde te verlagen tot het dichtstbijzijnde gehele getal.
  • Er wordt een willekeurig nummer gegenereerd tussen 0 en 51 en twee kaartposities worden verwisseld.

De derde forlus wordt gebruikt om de eerste vijf kaarten in de nieuwe stapel weer te geven.

Interessante artikelen...