JavaScript scheint nicht über eine eigene trim()
Methode. Wie kann ich mit JavaScript Leerzeichen am Anfang und Ende einer Zeichenkette abschneiden?
Antworten
Zu viele Anzeigen?Laut diese Seite der beste Allround-Ansatz ist
return str.replace(/^\s\s*/, '').replace(/\s\s*$/, '');
Wenn Sie jQuery verwenden, steht Ihnen natürlich eine optimierte Trimmmethode zur Verfügung.
Nun, wie viele Leute immer sagen, funktioniert die Trim-Funktion ziemlich gut, aber wenn man nicht ein ganzes Framework verwenden will, nur um einen Trim auszuführen, kann es nützlich sein, einen Blick auf seine Implementierung zu werfen. Hier ist sie also:
function( text ) { return (text || "").replace( /^(\s|\u00A0)+|(\s|\u00A0)+$/g, "" );}
Die Hauptvorteile, die ich bei dieser Umsetzung im Vergleich zu anderen hier bereits vorgeschlagenen Lösungen sehe, sind:
- Das Flag 'g', mit dem Sie eine mehrzeilige Zeichenkette beschneiden können
- Die (text || "") Syntax, die sicherstellt, dass die Funktion immer funktioniert, auch wenn das übergebene Argument null oder undefiniert ist.
Wie einige andere bereits angemerkt haben, ist es in der Regel am besten, diese Art von Dingen mit Hilfe einer JS-Bibliothek eines Drittanbieters zu erledigen. Nicht, dass trim() ist eine komplizierte Funktion, um selbst zu bauen, aber es gibt so viele Funktionen, die nicht nativen JavaScript, die Sie benötigen und am Ende-up schriftlich selbst, wird es bald mehr kostengünstig, eine Bibliothek zu verwenden.
Ein weiterer Vorteil der Verwendung einer JS-Bibliothek ist natürlich, dass die Autoren dafür sorgen, dass die Funktionen in allen wichtigen Browsern funktionieren, so dass Sie für eine Standardschnittstelle programmieren können und die lästigen Unterschiede zwischen dem Internet Explorer und allen anderen Browsern vergessen.
- See previous answers
- Weitere Antworten anzeigen