Atölye › Yılan › 18/28. adım
Dört if satırı neredeyse aynıydı. Bunu bir tabloya çevireceğiz: "tuş adı → yön". Oyun aynı çalışacak;
ama kod daha kısa ve bir sonraki adımda yapacağımız kontrol tek yere yazılacak.
Kodun davranışını değiştirmeden düzenlemeye refactoring (yeniden düzenleme) denir.
```js
const turns = {
ArrowUp: { x: 0, y: -1 },
ArrowDown: { x: 0, y: 1 },
ArrowLeft: { x: -1, y: 0 },
ArrowRight: { x: 1, y: 0 },
}
document.addEventListener('keydown', (event) => {
const turn = turns[event.key]
if (!turn) return
dir = turn
})
```const turns = { ... } → bir nesne, ama bu sefer sözlük gibi kullanılıyor: sol tarafta tuş adı, sağda yön.turns[event.key] → köşeli parantezle tablodan bakar: basılan tuş 'ArrowUp' ise { x: 0, y: -1 } gelir.
Tabloda olmayan bir tuşsa (ör. a) hiçbir şey gelmez: undefined.if (!turn) return → ! "değil" demek: yön bulunamadıysa fonksiyondan hemen çık (return), başka bir şey
yapma.dir = turn → bulunan yöne dön.if satırıyla birlikte) sil.turns tablosunu, bir boş satırı ve yeni kısa dinleyiciyi yaz.Beceriler: Yeniden düzenleme
← Yemi yılanın üstüne koyma Geri dönüş yok →