Atölye › XOX › 19/33. adım
Bir tahtaya bakınca üç şeyden biri doğrudur: biri kazanmıştır, tahta dolmuştur ve kimse kazanmamıştır (berabere), ya da oyun sürüyordur.
outcome (sonuç) fonksiyonu bunu tek kelimeyle söyleyecek: 'X', 'O', 'draw' (berabere) ya da null (henüz
bir şey yok).
```js
function outcome(cells) {
const line = winningLine(cells)
if (line) return cells[line[0]]
if (cells.every((cell) => cell !== '')) return 'draw'
return null
}
```const line = winningLine(cells) → önceki adımın fonksiyonu: kazanan çizgi ya da undefined.if (line) return cells[line[0]] → "bir çizgi bulunduysa". undefined yanlış, bulunmuş bir dizi doğru
sayılır. line[0] çizginin ilk kutu numarası; cells[...] o kutudaki işaret: 'X' ya da 'O', yani kazanan.cells.every((cell) => cell !== '') → "her kutu boş değil mi?" Hepsi doluysa 'draw'.return null → null "henüz yok" demenin değeri: oyun sürüyor.return fonksiyondan hemen çıkar. Kazanç önce sorulduğu için, son hamlede gelen kazanç
beraberlik sayılmaz.winningLine fonksiyonunun kapanan } işaretinin altına bir boş satır bırak.outcome fonksiyonunu yaz; function play'in üstünde kalsın.Beceriler: Fonksiyonlar, Diziler ve nesneler
← Üçü yan yana bul Tur biter →