Логотип YeaHub

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

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

Тренажёр

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

Обучение

Навыки

Войти

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

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

© 2026 YeaHub

Документы

Медиа

Назад
Вопрос про React: key, react, list

Что такое key в React и зачем он нужен

Этот вопрос проверяет понимание важности ключей (keys) в React для эффективного обновления списков и оптимизации производительности.

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

Key - это специальный строковый атрибут в React, который помогает идентифицировать элементы в списке. Когда React обновляет список, он использует ключи для определения, какие элементы были изменены, добавлены или удалены. Это позволяет React эффективно перерисовывать только измененные элементы, вместо полного обновления всего списка. Без ключей React может неправильно определить изменения, что приведет к ошибкам в отображении и снижению производительности.

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

Ключи (keys) являются фундаментальной концепцией в React для работы со списками элементов и оптимизации процесса ререндеринга.

Для чего нужны ключи

  • Идентификация элементов - уникальное определение каждого элемента в списке

  • Оптимизация производительности - предотвращение лишних ререндеров

  • Сохранение состояния - правильное обновление состояния компонентов в списке

Как работают ключи

Без ключей

const list = items.map(item => (
    <li>{item.name}</li>  // Warning: Each child should have a key
));

С ключами

const list = items.map(item => (
    <li key={item.id}>{item.name}</li>  // Правильное использование
));

Правила использования ключей

  • Ключи должны быть уникальными среди соседних элементов

  • Ключи не должны меняться между рендерами

  • Не используйте индекс массива если порядок элементов может измениться

Пример проблемы без ключей

// Начальное состояние
const items = ['Apple', 'Banana', 'Orange'];

// После удаления 'Apple'
const newItems = ['Banana', 'Orange'];

// Без ключей React может неправильно обновить DOM

Практические рекомендации

  • Используйте уникальные идентификаторы из данных (id, slug и т.д.)

  • Избегайте индексов когда данные могут изменяться

  • Генерируйте стабильные ключи если нет естественных идентификаторов

Вывод: Ключи критически важны для корректной работы списков в React. Они обеспечивают правильное обновление интерфейса, сохранение состояния компонентов и оптимизацию производительности при работе с динамическими данными.

Уровень

  • Рейтинг:

    5

  • Сложность:

    6

Навыки

  • React

    React

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

#key

#react

#list

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