Fast typing can cause out-of-order responses.
Problem:
User types "re" → Request A sent
User types "react" → Request B sent
Request B returns first
Request A returns, overwrites correct results
Solutions:
AbortController:
const controller = new AbortController();
fetch(url, { signal: controller.signal });
// On new request: controller.abort();
Request ID tracking: Only apply results if request ID matches latest.
Interview tip: Always mention race conditions. It shows production experience.