In questo esempio imparerai a scrivere un programma JavaScript che mischia un mazzo di carte.
Per comprendere questo esempio, è necessario conoscere i seguenti argomenti di programmazione JavaScript:
- JavaScript Array sort ()
- JavaScript per loop
Esempio: mescolare il mazzo di carte
// 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)`) )
Produzione
Le prime cinque carte sono: 4 di Club 5 di quadri Jack di quadri 2 di Club 4 di picche
Nel programma sopra, le variabili dei semi e dei valori contengono gli elementi di una carta.
Il for
ciclo annidato viene utilizzato per creare un mazzo di carte.
- Dobbiamo creare un mazzo di carte contenente ogni seme con tutti i valori. Quindi il primo
for
ciclo itera su tutti i semi e il secondofor
ciclo itera sui valori. Quindi, gli elementi vengono creati e aggiuntideck
all'array. - Gli elementi dell'array vengono memorizzati come oggetto come:
((Value: "Ace", Suit: "Spades"),(Value: "2", Suit: "Spades")… )
Il secondo for
ciclo viene utilizzato per mescolare il mazzo di carte.
Math.random()
genera un numero casuale.Math.floor()
restituisce il numero diminuendo il valore al valore intero più vicino.- Viene generato un numero casuale compreso tra 0 e 51 e vengono scambiate due posizioni delle carte.
Il terzo for
ciclo viene utilizzato per visualizzare le prime cinque carte nel nuovo mazzo.