Встречается на собеседованиях • сегодня
Расскажи про самую интересную задачу на последнем проекте
Одна из самых интересных задач — реализация виртуального списка для таблицы с тысячами строк. Проблема: рендеринг всех элементов сразу приводил к лагам.
**Решение**:
1. Отображаем только видимые элементы + небольшой буфер сверху/снизу.
2. Используем `IntersectionObserver` для динамической подгрузки.
3. Фиксированная высота строк для точного расчета позиций.
**Пример**:
```javascript
const VirtualList = ({ items, itemHeight, visibleCount }) => {
const [scrollTop, setScrollTop] = useState(0);
const startIdx = Math.floor(scrollTop / itemHeight);
const visibleItems = items.slice(startIdx, startIdx + visibleCount);
return (
setScrollTop(e.target.scrollTop)}>
);
};
```
Результат: плавный скролл даже при 10k+ элементов.
{visibleItems.map((item, i) => (
{item}
))}

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы