Вопрос углубляется в работу механизма сравнения пропсов.
Примитивы (строки, числа) сравниваются по значению, а объекты/массивы — по ссылке. Это делает проверку изменений быстрее.
Как работает сравнение:
Примитивы:
5 === 5 // true
'text' === 'text' // trueОбъекты:
{} === {} // false (разные ссылки)Пример с React.memo:
// Перерендер только если `count` или `text` изменились:
<MemoizedComponent count={5} text="Hello" />
// Перерендер при каждом родительском рендере (новый объект):
<MemoizedComponent config={{ id: 1 }} />Вывод:
Примитивы — самый эффективный тип пропсов для мемоизации.