В JavaScript объектная обертка (Wrapper Objects) - это объект, который оборачивает примитивное значение (строку, число или логическое значение) и предоставляет к нему доступ через методы объекта.

Например, к строке можно получить доступ через объектную обертку String, к числу - через Number, а к логическому значению - через Boolean. Каждая из этих оберток имеет свои методы и свойства, которые могут быть использованы для работы с примитивными значениями.

Рассмотрим пример использования объектной обертки String:

const str = "Hello, world!"
const strObj = new String(str) // создаем объектную обертку
 
console.log(typeof str) // "string"
console.log(typeof strObj) // "object"
 
console.log(str.toUpperCase()) // "HELLO, WORLD!"
console.log(strObj.toUpperCase()) // "HELLO, WORLD!"

В этом примере мы создали строку str и объектную обертку strObj, которая оборачивает эту строку. Затем мы используем метод toUpperCase() для конвертации строки в верхний регистр, как в случае примитивного типа, так и объектной обертки.

Хотя объектные обертки могут быть полезны в некоторых ситуациях, они могут также иметь некоторые нежелательные побочные эффекты, так как объекты являются ссылочным типом данных и могут занимать больше памяти, чем примитивные типы данных. Поэтому, в общем случае, рекомендуется использовать примитивные типы данных вместо объектных оберток, когда это возможно.


Назад