Логотип YeaHub

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

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

Тренажёр

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

Обучение

Навыки

Войти

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

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

© 2026 YeaHub

Документы

Медиа

Назад
Вопрос про JavaScript: reference, comparison

Что означает сравнение объектов по ссылке?

Вопрос проверяет понимание того, что именно сравнивается при работе с объектами в JavaScript.

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

Сравнение объектов по ссылке означает проверку того, указывают ли переменные на один и тот же объект в памяти. Если ссылки совпадают, объекты считаются равными. Если объекты имеют одинаковое содержимое, но разные ссылки, результат будет false. Такое поведение характерно для всех ссылочных типов. Это влияет на работу со state и сравнение данных.

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

Сравнение по ссылке — это проверка идентичности объекта, а не его структуры или значений.

Что такое ссылка

Ссылка — это:

  • указатель на объект в памяти

  • способ доступа к данным

  • не само значение объекта

Пример сравнения по ссылке

const obj1 = { value: 10 }
const obj2 = obj1
const obj3 = { value: 10 }

obj1 === obj2 // true
obj1 === obj3 // false

В этом примере:

  • obj1 и obj2 ссылаются на один объект

  • obj3 — отдельный объект с таким же содержимым

Где это особенно важно во frontend

  • при сравнении props и state

  • при оптимизации рендеринга

  • при использовании useEffect и memo

Типичная ошибка

Ожидать, что:

{ a: 1 } === { a: 1 } // true

На практике это всегда false.

Вывод:
Сравнение объектов по ссылке означает проверку того, один и тот же это объект в памяти или нет, независимо от его содержимого.

Уровень

  • Рейтинг:

    4

  • Сложность:

    5

Навыки

  • JavaScript

    JavaScript

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

#reference

#comparison

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