Atölye › Blackjack › 8/22. adım
Sayı kartları kendi sayısı kadar, vale, kız ve papaz 10, as (şimdilik) 11 eder. handValue bir elin toplamını
buluyor; iki elin üstünde de toplam yazıyor. Asları da sayıyoruz: sonraki adımda lazım olacak.
```js
function handValue(hand) {
let total = 0
let aces = 0
for (const { rank } of hand) {
if (rank === 'A') {
total += 11
aces += 1
} else total += ['J', 'Q', 'K'].includes(rank) ? 10 : Number(rank)
}
return total
}
ctx.fillStyle = 'white'
ctx.font = 'bold 16px sans-serif'
ctx.textAlign = 'left'
ctx.fillText('Dealer ' + handValue(dealer), 20, DEALER_Y - 10)
ctx.fillText('You ' + handValue(player), 20, PLAYER_Y - 10)
```for (const { rank } of hand) → her kartın yalnız rank alanını al (nesneyi açma).['J', 'Q', 'K'].includes(rank) → resimli kart mı? Öyleyse 10.Number(rank) → '7' yazısını 7 sayısına çevirir; '10' → 10.else total += ... → as değilse; tek satırlık else süslü parantezsiz.deal fonksiyonunun üstüne handValue yaz.draw'ın sonuna, bir boş satırdan sonra iki toplamı yazan satırları yaz. Çalıştır.Beceriler: Fonksiyonlar, Döngüler
← Çizmeye devam As: 11 ya da 1 →