LocalStone
Messages postés514Date d'inscriptionmercredi 19 mars 2003StatutMembreDernière intervention 1 mars 2009
-
28 avril 2004 à 16:46
Angelsafrania
Messages postés1Date d'inscriptionmardi 11 avril 2006StatutMembreDernière intervention13 mai 2009
-
13 mai 2009 à 16:08
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
Angelsafrania
Messages postés1Date d'inscriptionmardi 11 avril 2006StatutMembreDernière intervention13 mai 2009 13 mai 2009 à 16:08
Un code qui répond au spec du TRIM normal :
function trim(string){
var rtrn = "";
var max = string.length;
var j=0;
//On décale le premier index pour la copie
while (j<max && string[j] == " ")++j;
//on décale le dernier index pour la copie
while (max>0 && string[max-1] == " ")--max;
//On effectue la copie
while (j<max){
rtrn += string[j];
++j;
}
return rtrn;
}
njulio
Messages postés21Date d'inscriptionmardi 13 septembre 2005StatutMembreDernière intervention16 août 2011 28 févr. 2008 à 21:25
Mieux vaut écrire de cette façon :
function trim(val) {
var retour = ""
for(i=0;i < val.length;i++)
Car le vrai trim en PHP enlève non seulement les espaces mais aussi les tabulations et les retour chariots (unix ou windows) !
.oOMimiLOo.
michel_roger
Messages postés60Date d'inscriptionlundi 6 octobre 2003StatutMembreDernière intervention18 août 2006 29 avril 2004 à 12:29
Autant pour moi c plutôt un replace sans expression régulière. Je l'utilise en fait pour pouvoir afficher les séparateurs de milliers dans un montant et faire un parseFloat() ou un parseInt() par la suite sans avoir d'erreur (les parseInt et parseFloat renvoient une erreur s'ils trouvent des espaces).
Une modif intéressante serait de spécifier le caractère à retirer de la chaîne.
Bonne journée.
LocalStone
Messages postés514Date d'inscriptionmercredi 19 mars 2003StatutMembreDernière intervention 1 mars 2009 28 avril 2004 à 16:46
Salut !
Ta fonction fonctionne et c'est déjà bien, mais je ne suis pas sur que la fonction trim() ce soit extactement ça ...
En PHP, trim(), ça ne vire que les espaces avant et après la chaine. Mais ça reste à verifier.
++ !
13 mai 2009 à 16:08
function trim(string){
var rtrn = "";
var max = string.length;
var j=0;
//On décale le premier index pour la copie
while (j<max && string[j] == " ")++j;
//on décale le dernier index pour la copie
while (max>0 && string[max-1] == " ")--max;
//On effectue la copie
while (j<max){
rtrn += string[j];
++j;
}
return rtrn;
}
28 févr. 2008 à 21:25
function trim(val) {
var retour = ""
for(i=0;i < val.length;i++)
if (val.charAt(i) != " ")
{
retour += val.charAt(i)
}
else
if ((val.charAt(i) == " ") && (val.charAt(i+1) != " "))
retour += val.charAt(i);
return retour
}
Sinon si on on fait trim(jules nzi) ça nous donnes julesnzi, ce qui n'est pas réellement le fonctionnement de la fonction trim de php
7 mai 2004 à 10:38
C'est pas grand chose, mais c'est le petit plus qui fait que c'est mieux !
.oOMimiLOo.
6 mai 2004 à 20:21
<script>
String.prototype.trim = function()
{
return this.replace(/(^\s*)|(\s*$)/g,'');
}
var phrase=prompt("Entre une phrase :","");
alert("."+phrase.trim()+".");
</script>
6 mai 2004 à 14:46
function trim(string)
{
return string.replace(/(^\s*)|(\s*$)/g,'');
}
ou encore plus complet :
http://www.vermontsoftware.com/Javascript/trim.html
Car le vrai trim en PHP enlève non seulement les espaces mais aussi les tabulations et les retour chariots (unix ou windows) !
.oOMimiLOo.
29 avril 2004 à 12:29
Une modif intéressante serait de spécifier le caractère à retirer de la chaîne.
Bonne journée.
28 avril 2004 à 16:46
Ta fonction fonctionne et c'est déjà bien, mais je ne suis pas sur que la fonction trim() ce soit extactement ça ...
En PHP, trim(), ça ne vire que les espaces avant et après la chaine. Mais ça reste à verifier.
++ !