V tem primeru se boste naučili pisati program JavaScript, ki premeša krov kart.
Če želite razumeti ta primer, morate poznati naslednje teme programiranja JavaScript:
- Razvrščanje polja JavaScript ()
- JavaScript za zanko
Primer: Naključno prekrivanje kart
// 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)`) )
Izhod
Prvih pet kart je: 4 iz kluba 5 Diamonds Jack of Diamonds 2 iz kluba 4 pik
V zgornjem programu spremenljivke oblek in vrednosti vsebujejo elemente kartice.
Vgnezdena for
zanka se uporablja za ustvarjanje krova kart.
- Ustvariti moramo krov kart, ki vsebuje posamezne obleke z vsemi vrednostmi. Torej se prva
for
zanka ponovi čez vse obleke, drugafor
zanka pa po vrednosti. Nato se elementi ustvarijo in dodajo vdeck
matriko. - Elementi polja so shranjeni kot objekt kot:
((Value: "Ace", Suit: "Spades"),(Value: "2", Suit: "Spades")… )
Druga for
zanka se uporablja za premeščanje krova kart.
Math.random()
ustvari naključno število.Math.floor()
vrne število tako, da vrednost zmanjša na najbližjo celoštevilsko vrednost.- Generira se naključno število med 0 in 51 in dve kartici se zamenjata.
Tretja for
zanka se uporablja za prikaz prvih petih kart v novem krovu.