| [ Web Proxy ] |
| Viewing: https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Global_Objects/String/isWellFormed | [Back] [Original] |
Get to know MDN better
Dieser Inhalt wurde automatisch aus dem Englischen bersetzt, und kann Fehler enthalten. Erfahre mehr ber dieses Experiment.
Diese Funktion ist gut etabliert und funktioniert auf vielen Gerten und in vielen Browserversionen. Sie ist seit Oktober 2023 browserbergreifend verfgbar.
Die isWellFormed() Methode von String Werten gibt einen Booleschen Wert zurck, der anzeigt, ob diese Zeichenkette lone surrogates enthlt.
isWellFormed()
Keine.
Gibt true zurck, wenn diese Zeichenkette keine lone surrogates enthlt, andernfalls false.
Zeichenketten in JavaScript sind UTF-16-kodiert. Die UTF-16-Kodierung hat das Konzept der Surrogatpaare, die im Abschnitt UTF-16-Zeichen, Unicode-Codierungen und Graphem-Cluster ausfhrlich erlutert werden.
isWellFormed() ermglicht es Ihnen zu testen, ob eine Zeichenkette wohlgeformt ist (d.h. keine lone surrogates enthlt). Im Vergleich zu einer benutzerdefinierten Implementierung ist isWellFormed() effizienter, da Engines direkt auf die interne Reprsentation von Zeichenketten zugreifen knnen. Wenn Sie eine Zeichenkette in eine wohlgeformte Zeichenkette umwandeln mssen, verwenden Sie die toWellFormed() Methode. isWellFormed() erlaubt es, fehlerhafte Zeichenketten anders zu behandeln als wohlgeformte, wie z.B. das Werfen eines Fehlers oder das Markieren als ungltig.
const strings = [
// Lone leading surrogate
"ab\uD800",
"ab\uD800c",
// Lone trailing surrogate
"\uDFFFab",
"c\uDFFFab",
// Well-formed
"abc",
"ab\uD83D\uDE04c",
];
for (const str of strings) {
console.log(str.isWellFormed());
}
// Logs:
// false
// false
// false
// false
// true
// true
encodeURI lst einen Fehler aus, wenn die bergebene Zeichenkette nicht wohlgeformt ist. Dies kann vermieden werden, indem isWellFormed() verwendet wird, um die Zeichenkette zu testen, bevor sie an encodeURI() bergeben wird.
const illFormed = "https://example.com/search?q=\uD800";
try {
encodeURI(illFormed);
} catch (e) {
console.log(e); // URIError: URI malformed
}
if (illFormed.isWellFormed()) {
console.log(encodeURI(illFormed));
} else {
console.warn("Ill-formed strings encountered."); // Ill-formed strings encountered.
}
| Spezifikation |
|---|
| ECMAScript 2027 LanguageSpecification # sec-string.prototype.iswellformed |
String.prototype.isWellFormed in core-jsString.prototype.isWellFormedString.prototype.toWellFormed()String.prototype.normalize()Stringanchor()at()big()blink()bold()charAt()charCodeAt()codePointAt()concat()endsWith()fixed()fontcolor()fontsize()includes()indexOf()isWellFormed()italics()lastIndexOf()link()localeCompare()match()matchAll()normalize()padEnd()padStart()repeat()replace()replaceAll()search()slice()small()split()startsWith()strike()sub()substr()substring()sup()toLocaleLowerCase()toLocaleUpperCase()toLowerCase()toString()toUpperCase()toWellFormed()trim()trimEnd()trimStart()valueOf()[Symbol.iterator]()Object/FunctionDer Bauplan fr ein besseres Internet.
Teile dieses Inhalts sind 19982026 von einzelnen mozilla.org-Mitwirkenden. Inhalte sind verfgbar unter einer Creative-Commons-Lizenz.
| Web Proxy Viewer | New URL | Original Page |