Встречается на собеседованиях • сегодня

Насколько глубоко сравнивает Virtual DOM

Virtual DOM сравнивает деревья на уровне узлов (nodes), а не всего дерева целиком. При изменении состояния React создает новое VDOM-дерево и сравнивает его с предыдущим (diffing алгоритм). Основные правила сравнения: 1. **Разные типы элементов** – полная перерисовка (старое дерево удаляется, новое монтируется) 2. **Одинаковые DOM-элементы** – обновляются только измененные атрибуты 3. **Одинаковые компоненты** – обновляются пропсы, вызывается `shouldComponentUpdate()` 4. **Ключи (keys)** – помогают React идентифицировать элементы в списках Пример с ключами: ```jsx // Без key - неэффективно при добавлении в начало
    {items.map(item =>
  • {item.text}
  • )}
// С key - оптимальное обновление
    {items.map(item =>
  • {item.text}
  • )}
``` React использует эвристический O(n) алгоритм, а не точное сравнение, для баланса между производительностью и точностью.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы