Arama kutusuna "istanbul" yazdın. Sekiz harf, sekiz ayrı keyup olayı — ve sekiz
ayrı API isteği gitti. Kullanıcı bir kere aradı, sen sunucuya sekiz kere sordun.
Fatura
Bunu on bin kullanıcıyla çarp: seksen bin istek. Bunların yedide altısı, kullanıcı yazmaya devam ettiği için cevap gelmeden çöpe gidiyor.
Debounce: son olayı bekle
Debounce her tetiklendiğinde sayacı sıfırlar. Belirlenen süre (örneğin 300ms) boyunca yeni bir tetikleme gelmezse, en son isteği bir kere gönderir.
function debounce(fn, delay = 300) {
let timer;
return (...args) => {
clearTimeout(timer);
timer = setTimeout(() => fn(...args), delay);
};
}
const search = debounce((query) => fetch(`/api/search?q=${query}`));Sekiz tuş vuruşu, kullanıcı yazmayı bıraktığında tek bir isteğe düşüyor.
Throttle: düzenli aralıkla akıt
Throttle beklemez. Belirlenen aralıkta (örneğin 300ms) en fazla bir kez geçiş izni verir, arada gelen olayları yutar.
function throttle(fn, interval = 300) {
let last = 0;
return (...args) => {
const now = Date.now();
if (now - last >= interval) {
last = now;
fn(...args);
}
};
}Debounce son olayı önemser, throttle düzenli aralığı önemser.
Yaz ve farkı canlı gör: Ham vs. Throttle vs. Debounce
Aşağıdaki kutuya hızlıca bir şeyler yaz (ör. "istanbul"). Her tuş vuruşunda üç akışın sunucuya kaç istek gönderdiğini gerçek zamanlı izle.
Hangisi nerede
Karıştırmamak için basit bir ayrım: sonucu bekleyebiliyorsan debounce — arama kutusu, form doğrulama, otomatik kaydetme. Akışı seyreltmen gerekiyorsa throttle — scroll takibi, pencere boyutlandırma, fare hareketi.
İpucu: Bonus: eski isteği iptal et
React kullanıyorsan debounce'u AbortController ile birleştir; yeni bir
istek atarken öncekini iptal et. Böylece ağ yavaşsa bile eski bir cevap,
yeni yazdığın sorguyu ezmez.
Kapanış
İkisi için de kütüphaneye gerek yok, sekiz satırlık bir fonksiyon yeterli. Önemli olan hangisinin nerede kullanılacağını doğru seçmek.
İnteraktif Yol Haritası & Araç
Bunu da oku
- CZTRYapay Zekanın Yaptığı Siteler Neden Hep 'Ucuz' Görünüyor? 'unslop' Kurulum ve Tasarım Rehberi
Yapay Zekanın Yaptığı Siteler Neden Hep 'Ucuz' Görünüyor? 'unslop' Kurulum ve Tasarım Rehberi
4 Kasım 2026 · 3 dk okuma - CZTRCORS Hatası Nedir ve Aslında Seni Kimden Korur? (Same-Origin Policy & Preflight OPTIONS)
CORS Hatası Nedir ve Aslında Seni Kimden Korur? (Same-Origin Policy & Preflight OPTIONS)
30 Ekim 2026 · 3 dk okuma