Значимые данные копируются как значения, а при копировании ссылки несколько переменных могут обращаться к одному объекту; детали памяти зависят от языка и runtime.
Как различаются значимые и ссылочные типы с точки зрения использования памяти?
Значимые данные копируются как значения, а при копировании ссылки несколько переменных могут обращаться к одному объекту; детали памяти зависят от языка и runtime.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Значимые данные копируются как значения, а при копировании ссылки несколько переменных могут обращаться к одному объекту; детали памяти зависят от языка и runtime.
Для JavaScript примитивы неизменяемы, а объекты имеют идентичность: изменение общего объекта видно через другие ссылки. Утверждение «примитивы всегда в стеке, объекты всегда в куче» слишком упрощённо и не является контрактом языка. Оптимизации движка могут менять физическое размещение без изменения поведения.