Atölye › Adam Asmaca › 8/36. adım
Tahmin ettiğin harfleri bir yerde hatırlamalıyız; doğru tahmin edilen harfler boşlukların yerine geçecek.
Bunun için Set (küme) kullanacağız. Set bir liste gibidir ama her değeri en fazla bir kez tutar ve
"bu harf içinde var mı?" sorusunu çok hızlı cevaplar. Tahmin için ikisi de tam aradığımız şey.
```js
let word
let guessed // a Set of the letters tried so far
// The word with the letters not guessed yet hidden: 'C _ S T _ E'.
const masked = () => [...word].map((letter) => (guessed.has(letter) ? letter : '_')).join(' ')
function newWord() {
word = WORDS[Math.floor(Math.random() * WORDS.length)]
guessed = new Set()
}
```let guessed → denenen harfleri tutacak değişken. // sonrası bir yorum: bilgisayar atlar, bize not.guessed = new Set() → newWord içinde, her yeni kelimede boş bir küme oluşturur. new "yenisini yap" demek.guessed.has(letter) → "bu harf kümede var mı?" Cevap true (evet) ya da false (hayır).koşul ? a : b → kısa bir if: koşul doğruysa a, değilse b. Burada: harf denendiyse harfin kendisi,
denenmediyse '_'. Artık letter işe yarıyor.let word satırının altına let guessed // a Set of the letters tried so far satırını yaz.masked satırının üstüne yorum satırını yaz; masked içindeki '_' kısmını
(guessed.has(letter) ? letter : '_') yap.newWord içinde word = ... satırının altına guessed = new Set() yaz.Beceriler: Diziler ve nesneler, Oyun durumları
← Boşluklarla gizle Tekrar tekrar çiz →