У примитивных типов можно вызывать встроенные методы, например toString. Благодаря чему это возможно?

При доступе к свойствам примитива JavaScript использует поведение соответствующей объектной обёртки, что позволяет находить методы в прототипе. Сам примитив от этого не становится постоянным объектом.

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

Что ответить на собеседовании

При доступе к свойствам примитива JavaScript использует поведение соответствующей объектной обёртки, что позволяет находить методы в прототипе. Сам примитив от этого не становится постоянным объектом.

Подробный разбор

Ответ с пояснениями

При доступе к свойствам примитива JavaScript использует поведение соответствующей объектной обёртки, что позволяет находить методы в прототипе. Сам примитив от этого не становится постоянным объектом.

Например, строка имеет доступ к методам String.prototype. Присвоенное примитиву произвольное свойство не сохраняется как у обычного объекта и в strict mode может дать ошибку. null и undefined не поддерживают такой доступ: вызов их метода приводит к TypeError.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее