Atölye › Conway'in Hayat Oyunu › 6/32. adım
Şimdi resmi dünyaya bağlıyoruz: draw, grid'deki her hücreye tek tek bakacak ve canlı olanları yeşil kare
olarak çizecek.
2880 hücreyi (48 × 60) tek tek yazamayız. Bunun için döngü kullanırız: "şu işi, şu sayı şuna gelene kadar tekrar et". Bir döngünün içine ikinci bir döngü koyarsak önce satırları, her satırda da sütunları gezeriz: kitap okur gibi, satır satır, soldan sağa.
```js
ctx.fillStyle = '#4ade80'
for (let r = 0; r < ROWS; r++) {
for (let c = 0; c < COLS; c++) {
if (grid[r][c]) ctx.fillRect(c * CELL, TOP + r * CELL, CELL - 1, CELL - 1)
}
}
```for (let r = 0; r < ROWS; r++) { → döngü. Üç parçası var, ; ile ayrılır:let r = 0 → sayaç r (row, satır) 0'dan başlar.r < ROWS → r 48'den küçük olduğu sürece { } içini yap.r++ → her turdan sonra r'ye 1 ekle.
Yani içerisi r = 0, 1, 2 ... 47 için, her satır için bir kez çalışır.for (let c = 0; c < COLS; c++) → aynısı sütunlar (c, column) için: her satırda 60 tur.
Toplam 48 × 60 = 2880 tur.if (grid[r][c]) ... → "eğer bu hücre canlıysa şunu yap". 1 doğru, 0 yanlış sayılır; ölü hücreler atlanır.ctx.fillRect(c * CELL, TOP + r * CELL, CELL - 1, CELL - 1) → önceki adımdaki kare, ama 3 yerine c, 2 yerine
r: kare, hücre neredeyse oraya çizilir.draw içinde ctx.fillStyle = '#4ade80' satırının altındaki ctx.fillRect(3 * CELL, ...) satırını sil.{ ile açılır, kendi }'si ile kapanır; girintiler yol gösterir.Beceriler: Döngüler
← Hafızadaki dünya Rastgele bir çorba →