Skip to content

Commit 1096cc2

Browse files
committed
Used array to validate rank & suit
1 parent 5cec9c4 commit 1096cc2

1 file changed

Lines changed: 12 additions & 26 deletions

File tree

Sprint-3/1-implement-and-rewrite-tests/implement/3-get-card-value.js

Lines changed: 12 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -27,32 +27,18 @@ function getCardValue(card) {
2727
let rank = card.slice(0, -1);
2828
let suit = card.slice(-1);
2929

30-
// Validate rank
31-
if (rank !== "A" &&
32-
rank !== "2" &&
33-
rank !== "3" &&
34-
rank !== "4" &&
35-
rank !== "5" &&
36-
rank !== "6" &&
37-
rank !== "7" &&
38-
rank !== "8" &&
39-
rank !== "9" &&
40-
rank !== "10" &&
41-
rank !== "J" &&
42-
rank !== "Q" &&
43-
rank !== "K")
44-
{
45-
throw new Error("Invalid Rank");
46-
}
47-
48-
// Validate suit
49-
if(suit !== "♠" &&
50-
suit !== "♥" &&
51-
suit !== "♦" &&
52-
suit !== "♣" )
53-
{
54-
throw new Error("Invalid Suit")
55-
}
30+
const validRanks = ["A", "2", "3", "4", "5", "6", "7", "8", "9", "10", "J", "Q", "K"];
31+
const validSuits = ["♠", "♥", "♦", "♣"];
32+
33+
let isValidRank = validRanks.includes(rank);
34+
let isValidSuit = validSuits.includes(suit);
35+
36+
37+
38+
// Invalid Card
39+
if( !isValidRank || !isValidSuit ){
40+
throw new Error("Invalid Card")
41+
}
5642

5743
if(rank == "A"){
5844
return 11;

0 commit comments

Comments
 (0)