# BlackJack Part 1 (JavaScript)

Looking for a new project in JavaScript that I have not done in Python, I got to thinking about arrays.

As JavaScript allows us to generate random numbers and store variables (see “Scissor, Paper, Stone”) it should allow me to also recreate the card game of Blackjack or 21. For more information on Blackjack please see: https://en.wikipedia.org/wiki/Blackjack

The smallest game of Blackjack requires 2 people – a player and a dealer.

The objective of Blackjack is for the player to either score 21 with 2 cards, or get a higher score than the dealer without going over 21. If the player goes over 21 then they lose. If the dealer goes over 21 then the banker loses.

The dealer is going to be controlled by the computer.

I’m going to use one deck of cards (52 cards). The 52 cards are split into 4 suites (Hearts, Diamonds, Spades, Clubs) with each suite containing 13 cards:

Ace, 2, 3, 4, 5, 6, 7, 8, 9, 10, Jack, Queen, King

For this version of Blackjack I’m going to define an Ace as having the value of 1, and the Jack, Queen, King as having the value of 11.

So each suite now has;

1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 11, 11, 11

The values can be stored in an array, which we can call “deck”:

// variable to hold the deck of 52 cards

var deck = [1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 10, 10, 10, 10, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11];

We then need JavaScript to randomly choose a card and remove the card from the possible cards that can be played.

// geektechstuff

// BlackJack

// variable to hold the deck of 52 cards

var deck = [1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 10, 10, 10, 10, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11];

// variable to choose a random card from the deck

var card = deck[Math.floor(Math.random()*deck.length)],

card_remove = card,

position = deck.indexOf(card);

if (~position) deck.splice(position, 1);

// checking that a card is picked and that it is removed from deck

console.warn(card)

console.warn(deck)

Next up I will need to look at storing the card values in the players hand or the dealers hand and checking if the values have gone over 21.