String() Konstruktor

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

Der String() Konstruktor erstellt String Objekte. Wird er als Funktion aufgerufen, gibt er primitive Werte des Typs String zurück.

Syntax

js
new String(thing)
String(thing)

Hinweis:>String() kann mit oder ohne new aufgerufen werden, jedoch mit unterschiedlichen Effekten. Siehe Rückgabewert.

Parameter

thing

Alles, was in einen String umgewandelt werden soll.

Rückgabewert

Wenn String() als Funktion (ohne new) aufgerufen wird, gibt er value in einen String-Primärdatentyp umgewandelt zurück. Insbesondere werden Symbol-Werte in "Symbol(description)" umgewandelt, wobei description die Beschreibung des Symbols ist, anstatt einen Fehler zu werfen.

Wenn String() als Konstruktor (mit new) aufgerufen wird, wird value in einen String-Primärdatentyp umgewandelt (ohne spezielle Symbolbehandlung) und ein umhüllendes String Objekt zurückgegeben, welches kein Primärdatentyp ist.

Warnung: Sie sollten String selten als Konstruktor verwenden.

Beispiele

String-Konstruktor und String-Funktion

String-Funktion und String-Konstruktor erzeugen unterschiedliche Ergebnisse:

js
const a = new String("Hello world"); // a === "Hello world" is false
const b = String("Hello world"); // b === "Hello world" is true
a instanceof String; // is true
b instanceof String; // is false
typeof a; // "object"
typeof b; // "string"

Hier erzeugt die Funktion einen String (den primären Typ) wie versprochen. Der Konstruktor erzeugt jedoch eine Instanz des Typs String (ein Objekt-Wrapper) und deshalb wollen Sie den String-Konstruktor in der Regel gar nicht verwenden.

Verwendung von String(), um ein Symbol zu stringifizieren

String() ist der einzige Fall, bei dem ein Symbol in einen String umgewandelt werden kann, ohne einen Fehler zu werfen, da es sehr explizit ist.

js
const sym = Symbol("example");
`${sym}`; // TypeError: Cannot convert a Symbol value to a string
"" + sym; // TypeError: Cannot convert a Symbol value to a string
"".concat(sym); // TypeError: Cannot convert a Symbol value to a string
js
const sym = Symbol("example");
String(sym); // "Symbol(example)"

Spezifikationen

Specification
ECMAScript® 2026 Language Specification
# sec-string-constructor

Browser-Kompatibilität

Siehe auch