Verwendung von .trim() in JavaScript: Herausforderungen im IE
Während die .trim()-Methode in JavaScript häufig verwendet wird, um führende Zeilen zu entfernen und Leerzeichen am Ende von Zeichenfolgen können bei der Verwendung in Internet Explorer-Browsern (IE) auf Probleme stoßen. Dieses häufige Problem hat zu der folgenden Frage geführt:
Frage:
Beim Versuch, .trim() auf eine Zeichenfolge in JavaScript unter Mozilla anzuwenden, funktioniert es erfolgreich. Die Verwendung desselben Codes in IE8 führt jedoch zu einem Fehler. Was ist die Erklärung für diese Ungleichheit und gibt es Lösungen, um .trim() mit dem IE kompatibel zu machen?
Codeauszug:
var ID = document.getElementByID('rep_id').value.trim();
Fehlermeldung:
Message: Object doesn't support this property or method Line: 604 Char: 2 Code: 0 URI: http://test.localhost/test.js
Antwort:
Der Grund für den Fehler im IE ist, dass die .trim()-Methode nicht integriert ist Funktion in IE-Versionen vor IE9. Um dieses Problem zu beheben und die .trim()-Funktionalität im IE bereitzustellen, können Sie den folgenden Code implementieren:
if(typeof String.prototype.trim !== 'function') { String.prototype.trim = function() { return this.replace(/^\s+|\s+$/g, ''); } }
Dieser Code erweitert den String-Prototyp um die .trim()-Methode. Es verwendet reguläre Ausdrücke, um führende und nachfolgende Leerzeichen abzugleichen und zu entfernen. Durch das Hinzufügen dieses Codes zu Ihrem Skript kann .trim() nahtlos auch im IE verwendet werden.
Das obige ist der detaillierte Inhalt vonWarum funktioniert .trim() in Mozilla, löst aber im IE8 einen Fehler aus?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!