Trim degli spazi in Javascript
JavaScript non ha la funzione trim (come in C#) che permette di eliminare gli spazi all'inizio e alla fine di una stringa.
E' possibile implementarla tramite questa Regular Expression /^\s+|\s+$/g e il metrodo replace:
da come risultato:
con la stessa tecnica possiamo eliminare gli spazi solo all'inizio della stringa (trimStart):
o alla fine (trimEnd):
Possiamo anche estendere l'oggetto string per aggiungere i metodi trim, trimStart e trimEnd:
che possiamo usare direttamente sulla stringa:
E' possibile implementarla tramite questa Regular Expression /^\s+|\s+$/g e il metrodo replace:
JavaScript
var s = " asf d "
s.replace(/^\s+|\s+$/g,"");
Text
asf d
JavaScript
s.replace(/^\s+/g,"");
JavaScript
s.replace(/\s+$/g,"");
Possiamo anche estendere l'oggetto string per aggiungere i metodi trim, trimStart e trimEnd:
JavaScript
if(!String.prototype.trim) {
String.prototype.trim = function() {
return this.replace(/^\s+|\s+$/g,"");
};
}
if(!String.prototype.trimStart) {
String.prototype.trimStart= function() {
return this.replace(/^\s+/g,"*");
};
}
if(!String.prototype.trimEnd) {
String.prototype.trimEnd = function() {
return this.replace(/\s+$/g,"");
};
}
JavaScript
s.trim();
// " asf d "
s.trimStart();
// "asf d "
s.trimEnd();
// " asf d"
il test !String.prototype.<nome> permette di creare il metodo solo se NON esiste.
Se il browser lo implementa manteniamo la sua versione.
Se il browser lo implementa manteniamo la sua versione.