Bu hata, .map() metodunu bir dizi (array) olmayan bir değer üzerinde çağırdığında oluşur. map sadece dizilerde çalışır.
Neden olur?
Sık neden: API'den gelen verinin dizi değil nesne olması ya da NodeList/nesneyi dizi sanmak.
Hatalı kod
const veri = { sonuclar: [1, 2, 3] };
veri.map(x => x * 2); // veri bir nesne -> hata
Doğru kod
const veri = { sonuclar: [1, 2, 3] };
veri.sonuclar.map(x => x * 2); // dizi olan alani kullan
// NodeList icin: Array.from(document.querySelectorAll('p')).map(...)
Kontrol listesi
- Değerin gerçekten dizi olduğunu
Array.isArray(x)ile kontrol et. - NodeList'i diziye çevir:
Array.from(nodeList). - API yanıtında dizinin hangi alanda olduğunu kontrol et.
JavaScript derslerimizle bunu pekiştirebilirsin.