随机扑克牌生成器与香草的javascript



我有五张牌给玩家,五张牌给发牌人在点击或触摸它产生随机牌从扑克牌组。我目前有5个不同的函数用于每张卡片的同一个函数,因为我很难将这些函数放入一个可以在所有卡片之间共享的类中。

这是对所有卡片重复的函数的示例代码。

请帮我把我的代码简化成一个类,可以为所有的卡共享。

"

function drawCard5() {
var randomCard = Math.round(Math.random()* 52);
if (randomCard === 0) {
document.getElementById("card5").innerHTML = "A ♠️";
}
else if (randomCard === 1) {
document.getElementById("card5").innerHTML = "2 ♠️";
}
else if (randomCard === 2) {
document.getElementById("card5").innerHTML = "3 ♠️";
}
else if (randomCard === 3) {
document.getElementById("card5").innerHTML = "4 ♠️";
}
else if (randomCard === 4) {
document.getElementById("card5").innerHTML = "5 ♠️";
}
else if (randomCard === 5) {
document.getElementById("card5").innerHTML = "6 ♠️";
}
else if (randomCard === 6) {
document.getElementById("card5").innerHTML = "7 ♠️";
}
else if (randomCard === 7) {
document.getElementById("card5").innerHTML = "8 ♠️";
}
else if (randomCard === 8) {
document.getElementById("card5").innerHTML = "9 ♠️";
}
else if (randomCard === 9) {
document.getElementById("card5").innerHTML = "10 ♠️";
}
else if (randomCard === 10) {
document.getElementById("card5").innerHTML = "J ♠️";
}
else if (randomCard === 11) {
document.getElementById("card5").innerHTML = "Q ♠️";
}

else if (randomCard === 12) {
document.getElementById("card5").innerHTML = "K ♠️";
}

else if (randomCard === 13) {
document.getElementById("card5").innerHTML = "A ♥️";
}
else if (randomCard === 14) {
document.getElementById("card5").innerHTML = "2 ♥️";
}
else if (randomCard === 15) {
document.getElementById("card5").innerHTML = "3 ♥️";
}
else if (randomCard === 16) {
document.getElementById("card5").innerHTML = "4 ♥️";
}
else if (randomCard === 17) {
document.getElementById("card5").innerHTML = "5 ♥️";
}
else if (randomCard === 18) {
document.getElementById("card5").innerHTML = "6 ♥️";
}
else if (randomCard === 19) {
document.getElementById("card5").innerHTML = "7 ♥️";
}
else if (randomCard === 20) {
document.getElementById("card5").innerHTML = "8 ♥️";
}
else if (randomCard === 21) {
document.getElementById("card5").innerHTML = "9 ♥️";
}
else if (randomCard === 22) {
document.getElementById("card5").innerHTML = "10 ♥️";
}
else if (randomCard === 23) {
document.getElementById("card5").innerHTML = "J ♥️";
}
else if (randomCard === 24) {
document.getElementById("card5").innerHTML = "Q ♥️";
}
else if (randomCard === 25) {
document.getElementById("card5").innerHTML = "K ♥️";
}
else if (randomCard === 26) {
document.getElementById("card5").innerHTML = "A ♣️";
}
else if (randomCard === 27) {
document.getElementById("card5").innerHTML = "2 ♣️";
}
else if (randomCard === 28) {
document.getElementById("card5").innerHTML = "3 ♣️";
}
else if (randomCard === 29) {
document.getElementById("card5").innerHTML = "4 ♣️";
}
else if (randomCard === 30) {
document.getElementById("card5").innerHTML = "5 ♣️";
}
else if (randomCard === 31) {
document.getElementById("card5").innerHTML = "6 ♣️";
}
else if (randomCard === 32) {
document.getElementById("card5").innerHTML = "7 ♣️";
}
else if (randomCard === 33) {
document.getElementById("card5").innerHTML = "8 ♣️";
}
else if (randomCard === 34) {
document.getElementById("card5").innerHTML = "9 ♣️";
}
else if (randomCard === 35) {
document.getElementById("card5").innerHTML = "10 ♣️";
}
else if (randomCard === 36) {
document.getElementById("card5").innerHTML = "J ♣️";
}
else if (randomCard === 37) {
document.getElementById("card5").innerHTML = "Q ♣️";
}
else if (randomCard === 38) {
document.getElementById("card5").innerHTML = "K ♣️";
}
else if (randomCard === 39) {
document.getElementById("card5").innerHTML = "A ♦️";
}
else if (randomCard === 40) {
document.getElementById("card5").innerHTML = "2 ♦️";
}
else if (randomCard === 41) {
document.getElementById("card5").innerHTML = "3 ♦️";
}
else if (randomCard === 42) {
document.getElementById("card5").innerHTML = "4 ♦️";
}
else if (randomCard === 43) {
document.getElementById("card5").innerHTML = "5 ♦️";
}

else if (randomCard === 44) {
document.getElementById("card5").innerHTML = "6 ♦️";
}
else if (randomCard === 45) {
document.getElementById("card5").innerHTML = "7 ♦️";
}
else if (randomCard === 46) {
document.getElementById("card5").innerHTML = "8 ♦️";
}
else if (randomCard === 47) {
document.getElementById("card5").innerHTML = "9 ♦️";
}
else if (randomCard === 48) {
document.getElementById("card5").innerHTML = "10 ♦️";
}
else if (randomCard === 49) {
document.getElementById("card5").innerHTML = "J ♦️";
}
else if (randomCard === 50) {
document.getElementById("card5").innerHTML = "Q ♦️";
}
else if (randomCard === 51) {
document.getElementById("card5").innerHTML = "K ♦️";
}
else if (randomCard === 52) {
document.getElementById("card5").innerHTML = "JK 🤡";
audio2.play();
audio3.play();
document.getElementById("playercard").innerHTML = "Player Wins!"
document.addEventListener("click", handler, true);
restartGame();
}
}

可以先创建卡片列表。然后根据列表的索引获取卡片。

const createCardList = () => {
let cardList = []
let suits = "♠♥♣♦"
let number = "A123456789JQK"

for (let i=0; i<suits.length; i++) {
for (let j=0; j<number.length; j++) {
let card = ""
card += suits[i] + " " + number[j]
cardList.push(card)
}
}
return cardList
}
const getCard = () => {
let cardList = createCardList()
let random = Math.round(Math.random() * 52);

return cardList[random]
}
console.log(getCard())

最新更新