Sobes.tech
Назад к вопросам
Middle
13

Для чего нужен атрибут key при рендере списков? Можно ли использовать индекс массива как ключ?

Компании, где спрашивали
нейровэд

Ответ от нейросети

sobes.tech AI

Атрибут key в React используется для уникальной идентификации элементов списка при их рендеринге. Это помогает React эффективно обновлять и перестраивать DOM, минимизируя количество операций и сохраняя состояние компонентов.

Использование индекса массива в качестве ключа возможно, но не рекомендуется, особенно если порядок элементов может изменяться или элементы могут добавляться/удаляться. В таких случаях это может привести к неправильному сопоставлению элементов и багам в UI.

Лучше использовать уникальные и стабильные идентификаторы, например, ID из данных:

const list = [{id: 'a1', name: 'Item 1'}, {id: 'b2', name: 'Item 2'}];

return (
  <ul>
    {list.map(item => (
      <li key={item.id}>{item.name}</li>
    ))}
  </ul>
);