JavaScript Отличие строк от объектов, объекты-обёртки

В JavaScript сторки отличаются от объектов тем, что хотя их свойства можно считывать, но вот устанавливать (записывать) нельзя.

Точнее, запись свойства не приведёт к дальнейшей доступности нового значения этого свойства.

При этом у строки можно вызывать методы и обращаться к её свойствам, но это только потому, что в момент вызова метода (обращения к свойству) создаётся условно временный объект-обёртка, который выполняется "на себе" данный вызов, возвращает значение, а потом уничтожается.

Именно потому что он (объект-обёртка) уничтожается, он не может сохранить свойство, установленное для данной строки. Но объекты-обёртки можно создавать и явно:

 // Строка, чbсло и логическое значение.
var s = "test", n = 1, b = true;

var S = new String(s); // Объект String
var N = new Number(n); // Объект Number
var B = new Boolean(b); // Объект Boolean

Key Words for FKN + antitotal forum (CS VSU):