¿Son cadenas de objetos? [duplicar

Esta pregunta ya tiene una respuesta aquí:

¿Cómo es una cadena Javascript no un objeto? 1 respuesta

Aquí hay dos razones para pensar que las cadenas son objetos. Primero, puede crear una cadena de la siguiente manera:

var mystring = new String("asdf");

Tengo la impresión de que la función de constructor que sigue al nuevo operador tiene que devolver un objeto. En segundo lugar, las cadenas parecen tener propiedades y métodos. Por ejemplo

mystring.toUpperCase();

PERO, si las cadenas fueran objetos, entonces esperaríamos que algo como lo siguiente funcione:

function string_constructor() {
return "asdf";
}

var mystring = new string_constructor();

Pero no lo hace, y me han dicho que no porque las cadenas no son objetos. Entonces, ¿las cadenas son objetos o no? Y, de cualquier manera, ¿cómo puedo entender todo lo que he enumerado?

Respuestas a la pregunta(6)

Su respuesta a la pregunta