Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Назад
Вопрос про React: React, key prop, reconciliation, list rendering, virtual DOM

Почему уникальные id предпочтительнее для key?

Проверяет понимание важности использования уникальных и стабильных идентификаторов в качестве key при рендеринге списков в React для эффективного обновления DOM.

Короткий ответ

Уникальные key помогают React идентифицировать каждый элемент списка при обновлении. Без них React может перерисовывать все элементы, что снижает производительность. Использование индекса массива как key может привести к ошибкам при добавлении, удалении или перестановке элементов. Уникальный и стабильный key (например, id из базы данных) гарантирует корректное обновление только изменённых элементов.

Длинный ответ

Зачем нужен key в React?

При рендеринге списков React использует атрибут key для идентификации каждого элемента. Это позволяет алгоритму согласования (reconciliation) эффективно определять, какие элементы были добавлены, удалены или изменены. Без key React будет перерисовывать весь список при любом изменении, что негативно сказывается на производительности.

Почему уникальные id лучше индекса?

Использование индекса массива в качестве key может привести к некорректному поведению. Например, при добавлении элемента в начало списка индексы всех последующих элементов сдвигаются, и React может неправильно сопоставить старые и новые элементы, что вызовет ошибки в состоянии компонентов или неожиданное перерисовывание. Уникальный id, не зависящий от позиции в списке, решает эту проблему.

Пример кода

// Плохо: key={index}
{items.map((item, index) => {item.name})}

// Хорошо: key={item.id}
{items.map(item => {item.name})}

Вывод

Всегда используйте уникальные и стабильные идентификаторы (например, id из базы данных) в качестве key для списков в React. Это обеспечивает корректное обновление DOM и предотвращает ошибки, связанные с состоянием компонентов.

Frontend developer

tech
tech
tech
tech
tech
tech
tech
tech
tech

Ментор по Frontend

Полное сопровождение до оффера — без дорогих курсов, с оплатой после трудоустройства

Записаться на консультацию

Уровень

  • Рейтинг:

    5

  • Сложность:

    3

Навыки

  • React

    React

Ключевые слова

#React

#key prop

#reconciliation

#list rendering

#virtual DOM

Подпишись на React Developer в телеграм

Frontend developer

tech
tech
tech
tech
tech
tech
tech
tech
tech

Ментор по Frontend

Полное сопровождение до оффера — без дорогих курсов, с оплатой после трудоустройства

Записаться на консультацию