TrustedHTML: Methode toJSON()
Baseline 2026>
Neu verfügbar
Seit Februar 2026 funktioniert diese Funktion auf aktuellen Geräten und in aktuellen Browserversionen. Auf älteren Geräten oder in älteren Browsern funktioniert sie möglicherweise nicht.
Hinweis: Diese Funktion ist in Web Workers verfügbar.
Die Methode toJSON() der Schnittstelle TrustedHTML gibt einen String zurück, der das TrustedHTML-Objekt repräsentiert. Es handelt sich um denselben String, den TrustedHTML.toString() zurückgibt.
Die Methode wird automatisch von JSON.stringify() aufgerufen, wenn bei der JSON-Serialisierung ein TrustedHTML-Objekt vorkommt. Der serialisierte Wert kann anschließend mit der Methode TrustedTypePolicy.createHTML() innerhalb des Revivers von JSON.parse() wieder konvertiert werden. Dabei wird die Transformation der Policy erneut auf den Wert angewendet.
Syntax
toJSON()
Parameter
Keine.
Rückgabewert
Ein String.
Beispiele
>toJSON() direkt aufrufen
Dieses Beispiel erstellt ein TrustedHTML-Objekt. Ein direkter Aufruf von toJSON() gibt den darin gespeicherten String zurück.
const escapeHTMLPolicy = trustedTypes.createPolicy("myEscapePolicy", {
createHTML: (string) => string.replace(/</g, "<"),
});
const escaped = escapeHTMLPolicy.createHTML("<img src=x onerror=alert(1)>");
const json = escaped.toJSON();
console.log(json); // Same value as escaped.toString()
console.log(typeof json); // "string"
In einen JSON-String serialisieren
Das TrustedHTML-Objekt aus dem vorherigen Beispiel wird mit JSON.stringify() serialisiert. Dabei wird die Methode toJSON() automatisch aufgerufen.
console.log(JSON.stringify(escaped));
Dadurch würde der folgende JSON-String ausgegeben, einschließlich der umschließenden doppelten Anführungszeichen, die Teil des Stringinhalts sind:
"<img src=x onerror=alert(1)>"
Spezifikationen
| Spezifikation |
|---|
| Trusted Types> # dom-trustedhtml-tojson> |