U ovom ćete primjeru naučiti pisati JavaScript program koji miješa špil karata.
Da biste razumjeli ovaj primjer, trebali biste imati znanje o sljedećim temama programiranja JavaScript:
- Razvrstavanje JavaScript niza ()
- JavaScript za petlju
Primjer: Slučajno premještanje špila karata
// 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)`) )
Izlaz
Prvih pet karata su: 4 iz Club 5 of Diamonds Jack of Diamonds 2 iz Club 4 of Spades
U gore navedenom programu varijable odijela i vrijednosti sadrže elemente kartice.
Ugniježđena for
petlja koristi se za stvaranje špila karata.
- Moramo stvoriti špil karata koji sadrži svako odijelo sa svim vrijednostima. Dakle, prva
for
petlja ponavlja sve odijela, a drugafor
petlja preko vrijednosti. Zatim se elementi kreiraju i dodaju udeck
niz. - Elementi niza pohranjuju se kao objekt kao:
((Value: "Ace", Suit: "Spades"),(Value: "2", Suit: "Spades")… )
Druga for
petlja koristi se za miješanje špila karata.
Math.random()
generira slučajni broj.Math.floor()
vraća broj smanjivanjem vrijednosti na najbližu cjelobrojnu vrijednost.- Generira se slučajan broj između 0 i 51 i zamijene se dvije pozicije na kartici.
Treća for
petlja koristi se za prikaz prvih pet karata u novom špilu.