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

Как сравниваются пропсы в Should Component Update

React использует поверхностное сравнение (shallow comparison) для пропсов в shouldComponentUpdate. Это означает, что проверяются только ссылки на объекты, а не их содержимое. Если пропсы — примитивы, сравниваются их значения. Если объекты/массивы — сравниваются ссылки.

Пример:

jsx
shouldComponentUpdate(nextProps) {
  // Примитивы: сравнение по значению
  if (this.props.count !== nextProps.count) return true;
  
  // Объекты: сравнение по ссылке
  if (this.props.user !== nextProps.user) return true;
  
  return false;
}

Важно: если пропсы — вложенные объекты, shallow comparison может пропустить изменения. Для глубокого сравнения нужно использовать библиотеки типа lodash.isEqual или переходить на PureComponent с иммутабельными обновлениями.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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