Signatur
Beschreibung
Die Methode big() gehört zu den sogenannten HTML-Wrapper-Methoden von String. Sie liefert einen neuen String der Form <big>str</big> zurück. Das DOM oder der Ausgangsstring werden dabei nicht verändert. Die Methode baut nur Text zusammen.
Die Methode stammt aus der Anfangszeit von JavaScript, als man HTML oft per document.write() zusammensetzte. Sie ist nur in Annex B der ECMAScript-Spezifikation festgelegt. Dieser Anhang beschreibt Altfunktionen, die Browser aus Kompatibilitätsgründen weiter unterstützen. Auch das Element <big> selbst ist in HTML5 veraltet.
In neuem Code solltest du big() nicht mehr verwenden. Größere Schrift stellst du besser mit CSS ein, zum Beispiel mit font-size: larger. Wenn du Elemente brauchst, erzeugst du sie mit document.createElement() und füllst sie über textContent. Die Methode ist vor allem wichtig, um Altcode zu verstehen und zu modernisieren.
Rückgabewert
<big> beginnt, danach den Ausgangsstring enthält und mit </big> endet.Beispiele
Grundlegende Verwendung
const hinweis = 'Achtung';
console.log(hinweis.big());
console.log(hinweis); // Original bleibt unverändert
Keine Maskierung von Sonderzeichen
const eingabe = '<img src=x onerror=alert(1)>';
// big() maskiert nichts – der Inhalt landet ungefiltert im HTML
console.log(eingabe.big());
Moderner Ersatz mit DOM und CSS
// Statt: element.innerHTML = text.big();
const text = 'Wichtiger Hinweis';
const span = document.createElement('span');
span.textContent = text; // sicher, keine HTML-Interpretation
span.style.fontSize = 'larger'; // entspricht optisch <big>
document.body.append(span);
console.log(span.outerHTML);
Aufruf auf Nicht-Strings
// this wird in einen String umgewandelt
console.log(String.prototype.big.call(42));
try {
String.prototype.big.call(null);
} catch (e) {
console.log(e instanceof TypeError);
}
// Wichtig · Fallstricke
- Veraltet: Sowohl
big()als auch das Element<big>sind veraltet. Alle Browser und Node.js unterstützen die Methode zwar weiterhin, sie ist aber nur in Annex B der Spezifikation festgelegt. Andere JavaScript-Umgebungen müssen sie deshalb nicht anbieten. - Sicherheit (XSS):
big()maskiert keine Zeichen wie<,>oder&. Wenn du das Ergebnis mit Benutzereingaben ininnerHTMLoderdocument.write()einfügst, ermöglichst du Cross-Site-Scripting. Verwende stattdessentextContent. Eine strenge Content Security Policy (CSP) kann Inline-Event-Handler zusätzlich blockieren, ersetzt aber keine saubere Maskierung. - Wird die Methode auf
nulloderundefinedaufgerufen, zum Beispiel übercall, wirft sie einenTypeError. - Das Ergebnis ist reiner Text, kein DOM-Knoten. Die Darstellung ändert sich erst, wenn ein HTML-Parser den String verarbeitet.
- Linter wie ESLint oder TypeScript mit
@deprecated-Hinweisen markieren den Aufruf in der Regel als veraltet.